MAVEN与JETTY, GLASSFISH等WEB CONTAINER集成已经相当成熟了。但是支持WEBLOGIC的目前只有两种。
一是org.codehaus.mojo,二是weblogic自带的,并未开源的。
本文讲述了如何利用WEBLOGIC自带的plugin与WEBLOGIC集成。
?
1. 安装
首先要先安装WEBLOGIC服务器。具体下载地址http://www.oracle.com/technetwork/middleware/ias/downloads/wls-main-097127.html
2.生成PLUGIN所依赖的包
a. 打开terminal 进入{weblogic_home}/wlserver_10.3/server/lib,之后运行
java -jar wljarbuilder.jar -profile weblogic-maven-plugin
用来生成WEBLOGIC-MAVEN-PLUGIN的JAR包,
b. 打开这个包,找到weblogic-maven-plugin.jar\META-INF\maven\com.oracle.weblogic\weblogic-maven-plugin\POM.XML.
把POM.XML文件解压缩到{weblogic_home}/wlserver_10.3/server/lib里.
c. 之后在terminal中运行如下命令,路径依然是在{weblogic_home}/wlserver_10.3/server/lib
mvn install:install-file -Dfile={weblogic_home}/wlserver_10.3/server/lib/weblogic-maven-plugin.jar -DpomFile=pom.xml
当你看到build success后.说明依赖的包已经生成,这时候可以去{user_home}/.m2\repository\com\oracle\weblogic\weblogic-maven-plugin\10.3.4
查看JAR包是否已经存在.
4.使用PLUGIN
在你的项目中添加PLUGIN
?
?
<plugin> <groupId>com.oracle.weblogic</groupId> <artifactId>weblogic-maven-plugin</artifactId> <version>10.3.4</version> <configuration> <upload>true</upload> <action>deploy</action> <remote>false</remote> <verbose>true</verbose> <source>${project.build.directory}/${project.build.finalName}.${project.packaging}</source> <name>${project.build.finalName}</name> </configuration> </plugin>
?
?
configuration中还可以添加adminurl,user,password,target等属性.如果不添加的话,在执行MAVEN命令时可以手动添加在命令后面.
给一个完整的
?
?
<plugin> <groupId>com.oracle.weblogic</groupId> <artifactId>weblogic-maven-plugin</artifactId> <version>10.3.4</version> <configuration> <adminurl>t3://localhost:7001</adminurl> <user>weblogic</user> <password>weblogic123</password> <upload>true</upload> <action>deploy</action> <remote>false</remote> <verbose>true</verbose> <source>${project.build.directory}/${project.build.finalName}.${project.packaging}</source> <name>${project.build.finalName}</name> </configuration> <!-- <executions> <execution> <phase>install</phase> <goals> <goal>deploy</goal> </goals> </execution> </executions> --> </plugin>
?
?
5.执行MAVEN命令
在项目中POM.xml的位置上,执行
mvn com.oracle.weblogic:weblogic-maven-plugin:deploy -Dadminurl=t3://localhost:7001 -Duser=weblogic -Dpassword=weblogic1 -Dtargets=AdminServer?
如果你已经在POM中定义好了参数,就没必要在命令行后添加参数了.
?
HINTS: 使用简单命令
a. 在你的{USER_HOME}.m2/settings.xml 文件里加入如下几下.
?
?
<pluginGroups> <!-- pluginGroup | Specifies a further group identifier to use for plugin lookup. --> <pluginGroup>com.oracle.weblogic</pluginGroup> </pluginGroups>
?
?
b. 之后再回到项目{weblogic_home}/wlserver_10.3/server/lib/POM.XML中,改成如下
?
?
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.oracle.weblogic</groupId> <artifactId>weblogic-maven-plugin</artifactId> <packaging>maven-plugin</packaging> <version>10.3.4</version> <name>Maven Mojo Archetype</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-plugin-api</artifactId> <version>2.0</version> </dependency> </dependencies> <build> <plugins> <plugin> <artifactId>maven-plugin-plugin</artifactId> <version>2.3</version> <configuration> <goalPrefix>weblogic</goalPrefix> </configuration> </plugin> </plugins> </build> </project>
?
?
c. 在当前目录再执行一遍 mvn install:install-file -Dfile={weblogic_home}/wlserver_10.3/server/lib/weblogic-maven-plugin.jar -DpomFile=pom.xml
重新生成PLUGIN所依赖的包
d. 现在你就可以用短命令了:mvn weblogic:deploy
?
?
?
?