idea weblogic为啥会在后台启动两个java程序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了idea weblogic为啥会在后台启动两个java程序相关的知识,希望对你有一定的参考价值。

weblogic 8 :
1: 在D:\bea\user_projects\domains\mydomain目录下的installService.cmd文件中的:runAdmin下面的内容
set WLS_USER=weblogic
set WLS_PW=

改:
set WLS_USER=weblogic
set WLS_PW=weblogic

2:set CMDLINE="%JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% -classpath \"%CLASSPATH%\" -Dweblogic.Name=%SERVER_NAME% -Dweblogic.management.username=%WLS_USER% -Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE% -Djava.security.policy=\"%WL_HOME%\server\lib\weblogic.policy\" weblogic.Server"
改:
set CMDLINE="%JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% -classpath \"%CLASSPATH%\" -Dweblogic.Name=%SERVER_NAME% -Dweblogic.ProductionModeEnabled=%PRODUCTION_MODE% -Djava.security.policy="%WL_HOME%\server\lib\weblogic.policy" weblogic.Server"

3:双击installService.cmd,就OK了

注意防火墙要允许7001端口
参考技术A 应该是一个是本机jdk环境

一个是运行的Java程序吧,如果没有启动项目 后台是运行了一个Java环境的

IDEA+Spring Boot+MAVEN部署及其他

上面已经新建完毕web项目,接下来介绍spring boot部署知识

 Spring Boot 其默认是集成web容器的,启动方式由像普通Java程序一样,main函数入口启动。其内置Tomcat容器或Jetty容器,具体由配置来决定(默认Tomcat)。当然你也可以将项目打包成war包,放到独立的web容器中(Tomcat、weblogic等等),当然在此之前你要对程序入口做简单调整。

1、jar包

    打成jar包

<packaging>jar</packaging>
cd 项目跟目录(和pom.xml同级)
mvn clean package

   启动jar包命令

java -jar target/myproject-0.0.1-SNAPSHOT.jar

这种方式,只要控制台关闭,服务就不能访问了。下面我们使用在后台运行的方式来启动:

nohub  java -jar target/myproject-0.0.1-SNAPSHOT.jar  &


2、 war

    打包成war包,将war放到tomcat下启动

     将pom文件中 将jar包修改成war包,如:

<packaging>war</packaging>

MarketApplication.java继承SpringBootServletInitializer,代码如:
public class MarketApplication extends SpringBootServletInitializer{

打包命令:

cd 项目跟目录(和pom.xml同级)
mvn clean package

会在target目录下生成:项目名+版本号.war文件,拷贝到tomcat服务器中启动即可。

3、springboot打war包遇到的那些坑

  1、主程序类上继承SpringBootServletInitializer,并实现configure方法。

   2、pom文件中加        

<!-- 移除tomcat的支持,改成编译时支持 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>compile</scope>
</dependency>

根据以上步骤可以成功部署到tomcat容器中,但是在idea中启动时报错,如:

Caused by: java.lang.ClassNotFoundException: javax.servlet.ServletContext  

          at java.net.URLClassLoader.findClass(URLClassLoader.java:381)  

         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)  

         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)  

         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)                ... 21 common frames omitted  


解决方法:注释一下两个内容,打成的包在tomcat下完美运行,项目在idea下使用springboot方式也完美运行。

//  @Override
// protected SpringApplicationBuilder configure(SpringApplicationBuilder application){
//    return  application.sources(MarketingApplication.class);
// }
<!-- 移除tomcat的支持,改成编译时支持 -->
<!--<dependency>-->
  <!--<groupId>org.springframework.boot</groupId>-->
  <!--<artifactId>spring-boot-starter-tomcat</artifactId>-->
  <!--<scope>compile</scope>-->
<!--</dependency>-->

4、开发环境的调试

        热启动在正常开发项目中已经很常见了吧,虽然平时开发web项目过程中,改动项目启重启总是报错;但springBoot对调试支持很好,修改之后可以实时生效,需要添加以下的配置:

<dependencies>

    <dependency>

        <groupId>org.springframework.boot</groupId>

        <artifactId>spring-boot-devtools</artifactId>

        <optional>true</optional>

   </dependency>

</dependencies>

<build>

    <plugins>

        <plugin>

            <groupId>org.springframework.boot</groupId>

            <artifactId>spring-boot-maven-plugin</artifactId>

            <configuration>

                <fork>true</fork>

            </configuration>

        </plugin>

   </plugins>

</build>


以上是关于idea weblogic为啥会在后台启动两个java程序的主要内容,如果未能解决你的问题,请参考以下文章

linux下怎么启动和关闭WebLogic

IDEA工具配置weblogic

IDEA+Spring Boot+MAVEN部署及其他

weblogic server 后台命令启动

为啥我部署了项目,也启动了weblogic服务,为啥打开网页依然是该也无法显示?

Weblogic安装启动流程及免密后台启动