maven工程编译并生成可执行JAR包命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了maven工程编译并生成可执行JAR包命令相关的知识,希望对你有一定的参考价值。

在JAVA持续集成构建中,需要从SVN check out的代码编译并打成可执行JAR包,高手告诉我maven命令如何?

我用mvn compile package或mvn jar:jar都能打成jar包,但不能执行
利用HUDSON+MAVEN编译打包java maven工程,打包成可执行的JAR包。在HUDSON中需要填写maven命令。我想知道的是打可执行jar包的maven命令。
我的pom.xml中添加了:
<plugin><artifactId>maven-assembly-plugin</artifactId><configuration><descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef></descriptorRefs><archive> <manifest>mainClass>com.ImageViewer.dao.ImageViewer</mainClass></manifest> </archive></configuration></plugin>

目前的mvn命令是:clean assembly:assembly
但是build时报错:mavenExecutionResult exceptions not empty
org.apache.maven.InternalErrorException: Internal error: ava.lang.NullPointerException
换成jar:jar打成的jar包不能执行。

<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>com.abc.ABCTest</mainClass> -->入口类名
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy</id>
<phase>install</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>$project.build.directory/lib</outputDirectory> -->拷贝所以依赖存放位置
</configuration>
</execution>
</executions>
</plugin>
</plugins>

然后再用mvn clean install 装配一下,打出的jar包就可以运行
参考技术A 你需要什么的命令???
一般的是 call 你的maven的地址/mvn clean install
当然 也有其他的情况 比如节点的不同 需要改变命令 不知道 你要的节点是什么。。。

以上是关于maven工程编译并生成可执行JAR包命令的主要内容,如果未能解决你的问题,请参考以下文章

Maven 生成打包可执行jar包

Maven 生成可执行的jar包

maven javaproject工程打可执行jar包

maven javaproject工程打可执行jar包

Maven学习Maven打包生成普通jar包可运行jar包包含所有依赖的jar包

maven package install deploy区别