java -jar Test.jar找不到main class问题

如果你写了一些class,编 译到一个jar里面,但是在执行这个jar的时候报错,找不到main class,但是你明明是有的,是不是很郁闷,检查一下你的jar吧。

解压你的jar,打开META-INF这个folder,打开MANIFEST.MF这个文件(这是一个文本),看看里面有没没有Main- Class: MyClass,如果没有,就给加进去,记得把路径写正确,比如com.sun.mytest.Myclass,这样才能找到,然后重新打成jar就好 了,如果你不想这么麻烦,那就在编译jar的时候记得把这个写进去噢。

最常用的就是pom中需要添加下面的配置文件就可以解决问题

 <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>2.4</version>
        <configuration>
          <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
          </descriptorRefs>
          <archive>
            <manifest>
              <mainClass>com.test.FirstTest</mainClass>
            </manifest>
            </archive>
        </configuration>
        <executions>
          <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

posted @ 2016-04-20 09:58  麻雀虽小五脏俱全  阅读(2504)  评论(0编辑  收藏  举报