如何在maven目标目录下的JAR文件中运行java类?
我想在maven构建之后运行我的Izpack安装程序,但在执行“mvn测试”之后,我得到以下输出: 看起来我必须把生成的jar文件放到类路径中,有什么想法吗 摘自my pom.xml:如何在maven目标目录下的JAR文件中运行java类?,java,maven-2,maven,izpack,exec-maven-plugin,Java,Maven 2,Maven,Izpack,Exec Maven Plugin,我想在maven构建之后运行我的Izpack安装程序,但在执行“mvn测试”之后,我得到以下输出: 看起来我必须把生成的jar文件放到类路径中,有什么想法吗 摘自my pom.xml: <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>1.2.1<
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<phase>test</phase>
<goals>
<goal>java</goal> <!-- "exec" also possible -->
</goals>
<configuration>
<mainClass>com.izforge.izpack.installer.Installer</mainClass>
<arguments>
<argument>-console</argument>
<!-- <argument>arg1</argument> -->
</arguments>
</configuration>
</execution>
</executions>
</plugin>
org.codehaus.mojo
execmaven插件
1.2.1
测试
JAVA
com.izforge.izpack.installer.installer
-控制台
ApacheMaven 2.2.1(r801777;2009-08-0621:16:01+0200)
Java版本:1.6.0_20
Java主页:C:\Java\jdk16\jre
默认区域设置:en_GB,平台编码:Cp1252
操作系统名称:“windows xp”版本:“5.1”拱门:“x86”系列:“windows”
马丁:你看过罐子里面了吗?可能是maven没有将所需的类包含到jar中。我认为应该使用
-classpath
为java
命令定义类路径。您需要构造一个类路径,该路径将包含主类com.izforge.izpack.installer.installer
及其所有依赖项。它可以在一个jar、一个类文件夹或多个jar中。请参阅如何为java调用定义类路径。您可以使用类似的方法来定义该执行的依赖项:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<phase>test</phase>
<goals>
<goal>java</goal> <!-- "exec" also possible -->
</goals>
<configuration>
<mainClass>com.izforge.izpack.installer.Installer</mainClass>
<arguments>
<argument>-console</argument>
<!-- <argument>arg1</argument> -->
</arguments>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.codehaus.izpack</groupId>
<artifactId>izpack-standalone-compiler</artifactId>
<version>4.3.4</version>
<scope>compile</scope>
</dependency>
</dependencies>
org.codehaus.mojo
.是的,我已经查看了target\Installer-3.0.0-SNAPSHOT-standard.jar,类com.izforge.izpack.Installer.Installer在jar中。我可以通过运行“java-jar安装程序-3.0.0-SNAPSHOT-standard.jar”从cmd行执行它。就在maven看来,做同样的事情是个问题。
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<phase>test</phase>
<goals>
<goal>java</goal> <!-- "exec" also possible -->
</goals>
<configuration>
<mainClass>com.izforge.izpack.installer.Installer</mainClass>
<arguments>
<argument>-console</argument>
<!-- <argument>arg1</argument> -->
</arguments>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.codehaus.izpack</groupId>
<artifactId>izpack-standalone-compiler</artifactId>
<version>4.3.4</version>
<scope>compile</scope>
</dependency>
</dependencies>