Netbeans 无法导入 FileUtils 包?
Netbeans not able to import FileUtils pacakge?
我正在将我的 java 软件编译为 Netbeans IDE 8.2。它使用包 FileUtils.
import org.apache.commons.io.FileUtils;
我正在使用 FileUtils 中的以下函数:
FileUtils.copyURLToFile(inputUrl, dest);
构建良好,运行使用 Netbeans IDE。
但是,当我运行jar文件单独使用命令时:
java -jar myProgram.jar
我在同一行中遇到以下错误:
java.lang.NoClassDefFoundError: org/apache/commons/io/FileUtils
我不明白为什么 FileUtils 没有打包到 jar 文件中。
请帮忙。
这是我的 Apache Ant 构建文件:
<target name="package-for-store" depends="jar">
<property name="store.jar.name" value="iNetsControlProgramAllOs"/>
<property name="store.dir" value="store"/>
<property name="store.jar" value="${store.dir}/${store.jar.name}.jar"/>
<echo message="Packaging ${application.title} into a single JAR at ${store.jar}"/>
<delete dir="${store.dir}"/>
<mkdir dir="${store.dir}"/>
<jar destfile="${store.dir}/temp_final.jar" filesetmanifest="skip">
<zipgroupfileset dir="dist" includes="*.jar"/>
<zipgroupfileset dir="dist/lib" includes="*.jar"/>
<manifest>
<attribute name="Main-Class" value="${main.class}"/>
</manifest>
</jar>
<zip destfile="${store.jar}">
<zipfileset src="${store.dir}/temp_final.jar"
excludes="META-INF/*.SF, META-INF/*.DSA, META-INF/*.RSA"/>
</zip>
<delete file="${store.dir}/temp_final.jar"/>
您的 jar 不包含第三方库,您必须包含它们。
你如何构建你的myProgram.jar?
如果您使用 Netbeans 本身执行此操作,您可以在 this documentation 上关注 "Adding Necessary Libraries"。
否则,如果不是这样,您可以考虑使用 Maven。
编辑: 好的,您正在使用 Apache Ant
因此,您需要在 "build path" 中包含第三方库,这是您现有行的目标:
<zipgroupfileset dir="dist" includes="*.jar"/>
<zipgroupfileset dir="dist/lib" includes="*.jar"/>
请问您提供FileUtils的第三方Jar文件在哪里?
我想它也不在 dist 下 dist/lib。
此外,您应该将语法更改为:
<zipgroupfileset dir="dist/lib" includes="**/*.jar"/>
确保 dist/lib 每个子目录中的所有库。
如果您需要进一步的解释,请告诉我。
我正在将我的 java 软件编译为 Netbeans IDE 8.2。它使用包 FileUtils.
import org.apache.commons.io.FileUtils;
我正在使用 FileUtils 中的以下函数:
FileUtils.copyURLToFile(inputUrl, dest);
构建良好,运行使用 Netbeans IDE。
但是,当我运行jar文件单独使用命令时:
java -jar myProgram.jar
我在同一行中遇到以下错误:
java.lang.NoClassDefFoundError: org/apache/commons/io/FileUtils
我不明白为什么 FileUtils 没有打包到 jar 文件中。 请帮忙。
这是我的 Apache Ant 构建文件:
<target name="package-for-store" depends="jar">
<property name="store.jar.name" value="iNetsControlProgramAllOs"/>
<property name="store.dir" value="store"/>
<property name="store.jar" value="${store.dir}/${store.jar.name}.jar"/>
<echo message="Packaging ${application.title} into a single JAR at ${store.jar}"/>
<delete dir="${store.dir}"/>
<mkdir dir="${store.dir}"/>
<jar destfile="${store.dir}/temp_final.jar" filesetmanifest="skip">
<zipgroupfileset dir="dist" includes="*.jar"/>
<zipgroupfileset dir="dist/lib" includes="*.jar"/>
<manifest>
<attribute name="Main-Class" value="${main.class}"/>
</manifest>
</jar>
<zip destfile="${store.jar}">
<zipfileset src="${store.dir}/temp_final.jar"
excludes="META-INF/*.SF, META-INF/*.DSA, META-INF/*.RSA"/>
</zip>
<delete file="${store.dir}/temp_final.jar"/>
您的 jar 不包含第三方库,您必须包含它们。
你如何构建你的myProgram.jar?
如果您使用 Netbeans 本身执行此操作,您可以在 this documentation 上关注 "Adding Necessary Libraries"。
否则,如果不是这样,您可以考虑使用 Maven。
编辑: 好的,您正在使用 Apache Ant 因此,您需要在 "build path" 中包含第三方库,这是您现有行的目标:
<zipgroupfileset dir="dist" includes="*.jar"/>
<zipgroupfileset dir="dist/lib" includes="*.jar"/>
请问您提供FileUtils的第三方Jar文件在哪里?
我想它也不在 dist 下 dist/lib。
此外,您应该将语法更改为:
<zipgroupfileset dir="dist/lib" includes="**/*.jar"/>
确保 dist/lib 每个子目录中的所有库。
如果您需要进一步的解释,请告诉我。