一、Java运行命令
java程序的启动方式有三种:
1、java -jar
生成的jar包中,manifest文件定义了Main Class,可使用该命令
java -jar test.jar
2、java -cp
生成的jar包中,无Main Class配置,可使用该命令
java -cp test.jar cn.matt.Test
该命令也可从class文件中启动java程序,对于依赖的jar包,须明确列出,并用分号(windows)或冒号(Linux)分隔
java -cp ./target/classes;test2.jar cn.matt.Test
3、java -Djava.ext.dirs
当jar中不包含依赖包时,使用java -cp并不方便,此时可使用该命令,只需指定依赖包目录
java -Djava.ext.dirs=. cn.matt.maven_test.App
二、Java打包设置
使用Maven打包,默认情况下,生成的jar包不能直接运行(无Main Class),并且不包含依赖jar包
指定Main Class,并包含依赖的jar包配置:
<build> <plugins> <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <appendAssemblyId>false</appendAssemblyId> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> <archive> <manifest> <mainClass>cn.matt.maven_test3.App</mainClass> </manifest> </archive> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>assembly</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
参考: