关于如何执行jar包

若是MANIFEST.MF中指定了main class 那么执行时使用如:css

java -jar jar包名.jar aaa bbb (后面跟的是传到args中的参数)

 若是没有,执行时使用如:java

java -cp jar包名.jar 要执行main方法的类的完整类名 aaa bbb
另外若是服务器默认的java版本太低,抛出了ERROR:java.lang.UnsupportedClassVersionError: org/apache/kafka/clients/consumer/Consumer : Unsupported major.minor version 52.0,能够经过临时设置PATH和CLASSPATH来指定用高版本jvm运行jar包,命令以下:
#临时设置path
export PATH=/opt/jdk1.8.0_121/bin:$PATH
#临时设置classpath
set classpath=/opt/jdk1.8.0_121/jre/lib,%classpath%

以后再用java -cp或java -jar命令执行jar包就好了python






关于在MANIFEST.MF中写入main class能够在pom中指定如(若是有多个main.class那么指定一个最主要的,其余经过java -cp执行):
<build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>2.5.5</version>
<configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> <archive> <manifest> <mainClass>io.test.main.MainOfDiskMount</mainClass> </manifest> </archive> </configuration>
<executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>assembly</goal> </goals> </execution> </executions>
</plugin> </plugins> </build>

pom中写好后,经过执行maven的assembly命令便可打出with依赖的jar包 apache

 

 

 

另外关于如何打出可执行jar包参考:https://blog.csdn.net/xiao__gui/article/details/47341385
相关文章
相关标签/搜索