maven部署web项目到weblogic中

来源:互联网 发布:高科技专利 知乎 编辑:程序博客网 时间:2024/06/05 20:40
官方文档请看如下网址(http://docs.oracle.com/cd/E21764_01/web.1111/e13702/maven_deployer.htm#DEPGD386),但是其中的配置缩写名似乎不能用,反正我配置不成功。

从weblogic 10.3.4开始支持maven deploy部署
 
步骤如下:
1.构建weblogic-maven-plugin jar
在D:\oracle\Middleware\wlserver_12.1\server\lib
找到 WebLogic JarBuilder Tool (wljarbuilder),执行:
java -jar wljarbuilder.jar -profile weblogic-maven-plugin
 
2.将weblogic-maven-plugin jar中的pom.xml 解压出放入到在
D:\oracle\Middleware\wlserver_12.1\server\lib
可以使用命令:
jar xvf D:/oracle/Middleware/wlserver_12.1/server/lib/weblogic-maven-plugin.jar 
META-INF/maven/com.oracle.weblogic/weblogic-maven-plugin/pom.xml
 
cp D:/oracle/Middleware/wlserver_12.1/server/lib/META-INF/maven/com.oracle.weblogic/
weblogic-maven-plugin/pom.xml D:/oracle/Middleware/wlserver_12.1/server/lib
 
3.安装插件:
一种将weblogic-maven-plugin.jar 和pom.xml上传到nexus的第三方库中
另一种执行mvn install:install-file -Dfile=weblogic-maven-plugin.jar -DpomFile=pom.xml
进行安装。这个时候在你的本地仓库能到找.m2\repository\com\oracle\weblogic
 
4.在当前需要上传的应用的pom中配置weblogic的相关配置
比如:
 <!--auto deploy war to weblogic by maven-->
   
   <plugin> 
 <groupId>com.oracle.weblogic</groupId>
 <artifactId>weblogic-maven-plugin</artifactId>
 <version>10.3.6.0</version>
 
      <configuration> 
          <adminurl>t3://192.168.2.141:9001</adminurl>
          <user>weblogic</user> 
          <password>123456</password> 
          <upload>true</upload> 
          <action>deploy</action> 
          <remote>false</remote> 
          <verbose>true</verbose> 
<source>target/demo.war</source> 
         <name>demo</name> 
      </configuration> 
      <!-- 
      <executions> 
         <execution> 
            <phase>install</phase> 
              <goals> 
                <goal>deploy</goal> 
              </goals> 
         </execution> 
       </executions> 
       --> 
  </plugin> 
   <!-- end-->
先打包生成demo.war,然后执行>mvn com.oracle.weblogic:weblogic-maven-plugin:deploy
主要官方提供的命令是:mvn weblogic:deploy; 其实你敲这个命令你会发现,他用的不是oracle的plugin
而是用的 org.codehaus.mojo的
此外如果需要提前命令,可以用help来查看,查看结果:
---
The following are the goals available currently in Maven
deploy
list-apps
redeploy
start-app
stop-app
undeploy
update-app
 
执行成功后,回到weblogic的console台,你能发现你的war包,同时可以访问看是否部署成功。
如果想直接一个命令部署怎么办? 直接在mvn命令后面加上package
mvn package com.oracle.weblogic:weblogic-maven-plugin:deploy
但是他报错:
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.oracle.weblogic:weblogic-maven-plugin:10.3.6.
0:deploy (default-cli) on project ep-easyui-webapp: weblogic.deploy.api.tools.de
ployer.DeployerException: Java heap space -> [Help 1]
[ERROR]
原因是jdk 内存不够
为mvn设置内存,在maven.bat上加上
set MAVEN_OPTS=-Xdebug -Xnoagent -Xms256m -Xmx512m -Djava.compiler=NONE
这句话本身是@rem有。
然后直接
mvn package com.oracle.weblogic:weblogic-maven-plugin:deploy
就是能成功。
 
参考文献:
http://docs.oracle.com/cd/E24329_01/web.1211/e24443/maven_deployer.htm
 
主要10.3以后好像才有这个支持,另外12g和11g也有区别。


另外,需要注意的是,weblogic的maven插件和tomcat的maven插件不同,tomcat的maven插件会自动给你的项目打包,但是weblogic的maven插件不会。所以一定要先运行maven package再运行mvn com.oracle.weblogic:weblogic-maven-plugin:deploy才能显示你修改后的项目。
0 0
原创粉丝点击