gpt4 book ai didi

java - 创建可运行的 Jar 文件。 (java.lang.NoClassDefFoundError)

转载 作者:行者123 更新时间:2023-12-02 07:19:45 26 4
gpt4 key购买 nike

Possible Duplicate:
Why does Ant say “NoClassDefFound” when my JAR is on the classpath?

我目前正在 Ant 中编译 3 个 java 文件。它使用 Java GUI,因此依赖于 2 个 .jar 文件。使用 javac 和 jar 进行编译在 Ant 中运行良好。但是,一旦我双击 jar 文件来运行它,它就不会运行。当我尝试在 Ant 中使用 Java 运行它时,发生以下错误。

 [java] Exception in thread "main" java.lang.NoClassDefFoundError: org/jdesktop/layout/GroupLayout$Group
[java] at tictactoe.General.main(Unknown Source)
[java] Caused by: java.lang.ClassNotFoundException: org.jdesktop.layout.GroupLayout$Group

等等...

这是我的 Ant 文件` 井字棋 - CIS3760A1

    <path id="classpath">
<fileset dir="lib" includes="*.jar" />
</path>

<target name="init">
<mkdir dir="build" />
<mkdir dir="dist" />
</target>

<target name="compile" depends="init">
<javac srcdir="src" destdir="build" classpathref="classpath" includeantruntime="false" />
</target>

<target name="jar" depends="compile">
<jar destfile="dist/CIS3760A1.jar" basedir="build">
<manifest>
<attribute name="Main-Class" value="tictactoe.General"/>
<attribute name="Class-Path" value="lib/org-jdesktop-layout.jar lib/swing-layout-1.0.4.jar"/>
</manifest>
</jar>
</target>

<target name="clean">
<delete dir="build" />
<delete dir="dist" />
</target>

<target name="run" depends="jar">
<java jar="dist/CIS3760A1.jar" fork="true" classpathref="classpath" />
</target>

`

最佳答案

JAR 文件是否是一个带有 lib 子目录的目录,其中包含 2 个必需的 jar 文件?从脚本的外观来看,它正在构建到一个 dist 目录中,并且看起来它没有相对于主 jar 所需的 lib 目录。

关于java - 创建可运行的 Jar 文件。 (java.lang.NoClassDefFoundError),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14409920/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com