一个项目中,往往主程序不只一个。打包jar时,一般需要指定主程序。拿maven来说,配置主程序的方式如下:
pox.xml中
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-shade-plugin</artifactId>
- <executions>
- <execution>
- <phase>package</phase>
- <goals>
- <goal>shade</goal>
- </goals>
- <configuration>
- <transformers>
- <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
- <mainClass>cn.vicky.skstatistics.money.App 这个是主程序类 </mainClass>
- </transformer>
- </transformers>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- <finalName>SkMoneyStatistics</finalName>
- </build>
可以通过双击方式运行jar程序。
如果一个jar中含有多个主程序,而你没有配置默认主程序,或者想要运行指定主程序,则可以通过如下命令执行:
Java -cp example03-1.0-SNAPSHOT.jar cn.vicky.example03.HelloAgent
-cp <目录和 zip/jar 文件的类搜索路径>
example03-1.0-SNAPSHOT.jar jar包
cn.vicky.example03.HelloAgent 指定的主程序类