java-将我的Eclipse项目正确导出为可运行的jar

您好,我正在Eclipse中开发一个项目,并试图将其导出,以便可以将其发送给一些朋友.对于如何导出我一无所知,所以我观看了一些YouTube视频,因为这是我在该主题上所能找到的全部.录像说:

>文件>出口
> Java>可运行的罐子
>下一个
>设置项目启动配置,导出位置和库配置. (我正在使用lwjgl和slick 2d),所以选择了“将所需的库打包到生成的JAR中”.

然后,我尝试通过双击在桌面上启动它,什么也没做.然后,我从命令提示符下尝试使用“ java -jar my_jar_name.jar”,它引发了此错误:

Exception in thread "main" java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)
Caused by: java.lang.UnsatisfiedLinkError: no lwjgl in java.library.path
        at java.lang.ClassLoader.loadLibrary(Unknown Source)
        at java.lang.Runtime.loadLibrary0(Unknown Source)
        at java.lang.System.loadLibrary(Unknown Source)
        at org.lwjgl.Sys$1.run(Sys.java:73)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.lwjgl.Sys.doLoadLibrary(Sys.java:66)
        at org.lwjgl.Sys.loadLibrary(Sys.java:95)
        at org.lwjgl.Sys.<clinit>(Sys.java:112)
        at org.lwjgl.opengl.Display.<clinit>(Display.java:135)
        at org.newdawn.slick.AppGameContainer$1.run(AppGameContainer.java:39)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.newdawn.slick.AppGameContainer.<clinit>(AppGameContainer.java:36)
        at javaGame.Game.main(Game.java:37)
        ... 5 more

这是我项目中的主要方法:

仅供参考:第一行是第34行,最后一行是#43

public static void main(String[] args) {
    AppGameContainer appgc;
    try{
        appgc = new AppGameContainer(new Game(gamename));
        appgc.setDisplayMode(appgc.getScreenWidth(), appgc.getScreenHeight(), true);
        appgc.start();
    }catch(SlickException e){
        e.printStackTrace();
    }
}

如果需要更多信息,请告诉我!
附言这是我要导出的Eclipse中的第一个Java项目,所以以前我没有做过.

解决方法:

您的问题与本机库有关,当您运行应用程序时,找不到所需的库.我假设您已按照以下说明进行操作

http://www.lwjgl.org/wiki/index.php?title=Setting_Up_LWJGL_with_Eclipse

要运行您的应用程序,您必须

java -Djava.library.path="<path to lwjgl native files>" -jar my_jar_name.jar
上一篇:java-sikuli classpath UnsatisfiedLinkError否opencv_core与macosx intellij Junit


下一篇:java调用dll报错Exception in thread "main" java.lang.UnsatisfiedLinkError: demo.TestJNI.DLL_ADD