Java 使用Eclipse创建jar文件

Java 使用Eclipse创建jar文件,java,eclipse,jar,Java,Eclipse,Jar,我需要使用EclipseIDE创建一个jar文件。但是我面临一个问题,就是在我正在创建的jar中添加引用jar。。。在为我的项目创建一个jar之后,当我使用命令提示符运行它时(我使用命令提示符,因为我需要输入一个文件作为命令行参数),它会给出一个异常,表示“未找到类”,并且该特定类在引用jar文件中 我试图用下面链接中指示的方法解决我的问题,但问题仍然存在 ) 有人能帮我吗?Thanx提前…您正在创建一个可执行的jar吗?使用eclipse创建可执行jar(即:它有一个主类和一个清单)时,有一个

我需要使用EclipseIDE创建一个jar文件。但是我面临一个问题,就是在我正在创建的jar中添加引用jar。。。在为我的项目创建一个jar之后,当我使用命令提示符运行它时(我使用命令提示符,因为我需要输入一个文件作为命令行参数),它会给出一个异常,表示“未找到类”,并且该特定类在引用jar文件中

我试图用下面链接中指示的方法解决我的问题,但问题仍然存在

)


有人能帮我吗?Thanx提前…

您正在创建一个可执行的jar吗?使用eclipse创建可执行jar(即:它有一个主类和一个清单)时,有一个包含引用的选项。

您正在创建可执行jar吗?使用eclipse创建可执行jar(即:它有一个主类和一个清单)时,有一个包含引用的选项。

您可以使用导出向导创建一个包含所有依赖项的可运行jar


转到“导出>可运行JAR文件”,并选择“将所需库打包到生成的JAR中”。

您可以使用导出向导创建包含所有依赖项的可运行JAR


转到“导出>运行JAR文件”,并选择“将所需库打包到生成的JAR中”。

您可以使用ant脚本来完成这项工作:

<target name="dist" description="dist" depends="compile">
    <jar destfile="executable.jar">
            <manifest>
                    <attribute name="Main-Class" value="com.foo.MainClass"/>
            </manifest>     
        <fileset dir="build" />
        <zipfileset src="lib/commons-beanutils.jar"/>           
        <zipfileset src="lib/commons-logging-1.1.jar"/>
            <!-- Replace with your libraries -->
    </jar>  
</target>


您可以使用ant脚本为您执行以下操作:

<target name="dist" description="dist" depends="compile">
    <jar destfile="executable.jar">
            <manifest>
                    <attribute name="Main-Class" value="com.foo.MainClass"/>
            </manifest>     
        <fileset dir="build" />
        <zipfileset src="lib/commons-beanutils.jar"/>           
        <zipfileset src="lib/commons-logging-1.1.jar"/>
            <!-- Replace with your libraries -->
    </jar>  
</target>


请注意,您所指的文章只告诉您如何将附加JAR添加到构建路径中,以便Eclipse能够构建您的项目。在运行应用程序时,类路径上仍然需要部分(或全部)它们。已经提供的答案提供了更多关于如何实际将它们添加到应用程序jar的信息,但是您也可以简单地使用
-classpath
参数引用放置所有jar的(lib)映射。看见
因此,基本上,您必须确保在运行时(使用classpath参数或使用其他答案之一)以及在构建时(使用“由您引用”链接中提到的解决方案)引用所需的JAR.

请注意,您所指的文章只告诉您如何将附加JAR添加到构建路径中,以便Eclipse可以构建您的项目。在运行应用程序时,类路径上仍然需要部分(或全部)它们。已经提供的答案提供了更多关于如何实际将它们添加到应用程序jar的信息,但是您也可以简单地使用
-classpath
参数引用放置所有jar的(lib)映射。看见
因此,基本上,您必须确保在运行时(使用classpath参数或使用其他答案之一)以及在构建时(使用您引用的链接中提到的解决方案)引用所需的JAR。

这看起来可能会弄乱库JAR的清单文件。如果你想用Ant而不是向导来实现这一点,我建议你使用OneJar(向导正在做类似的事情):这看起来可能会弄乱库JAR的清单文件。如果您想使用Ant而不是向导来实现这一点,我建议您使用OneJar(向导正在幕后进行类似的操作):