问题:该程序本地运行正常,服务端运行报错找不到第三方包中的类
原因:本地打jar包时有错,未能正确引入第三方包
解决:本地通过fat jar插件来打包,方法如下
在Eclipse 下 java 应用程序打包 Mainfest.mf 格式
首先保证程序在Eclipse下的正常执行,然后方法如下:( 写在最前面 做好的Eclipse打包 还是使用插件 Fat jar)
下载地址 :http://sourceforge.net/project/showfiles.php?group_id=115990&package_id=125924
使用说明:
Fat Jar Eclipse Plug-In Tutorial
Create a new Java Project named "demolib".
Add the Class "demolib.DemoLib.java" containing the following code:
package demolib;
public class DemoLib {
public static void sayHello() {
System.out.println("Hello");
}
}
The Project should look something like this:
In the "Package-Explorer" (not the "Resource-View") right click on the project "demolib".
Select "+ Build Fat Jar".
A Configuration Dialog appears. Just press "Finish".
The File "demolib_fat.jar" has been created in the project root directory.
Create a new Java Project named "demorun".
In the project properties add the Library "demolib/demolib_fat.jar" to the Java Build Path":
Add the Class "demorun.DemoRunMain.java" containing the following code:
package demorun;
import demolib.DemoLib;
public class DemoRunMain {
public static void main(String[] args) {
DemoLib.sayHello();
}
}
The Project should look something like this:
Start the Export Wizard from the File-Menu ("File" -> "Export").
Select "+ Fat Jar Exporter" and click "next >".
Select the project "demorun" and click "next >".
A Configuration-Dialog appears showing the current Settings.
The Main Class - the one containing the static methode main - must be defined in the jar.
Click on the "Browse..." Button on the right side behind the Main-Class Edit field.
Select "DemoRunMain" and click the "OK" Button.
The FullyQualifiedName "demorun.DemoRunMain" is now set for "Main-Class".
Save the current Settings by clicking on the "Finish" Button.
In addition the file ".fatjar" storing the configuration settings has been created in the project root directory
The created jar file contains all classes from all referenced jar files (demolib_fat.jar) and the project classes.
This file can be executed anywhere, no classpath has to be set, because all necessary libraries
are extracted inside the "Fat Jar":
> java -jar demorun_fat.jar
Hello