当前位置: 首页 > 知识库问答 >
问题:

引起原因:java.lang.ClassNotFound异常:org.apache.commons.io.FileUtils[重复]

诸葛利
2023-03-14

我正在测试maven及其功能。我正在尝试使用commons io将字符串写入文本文件

import org.apache.commons.io.FileUtils;
...
public void writeToFile(String fileName){
    File file = new File(fileName);
    ...
    FileUtils.writeStringToFile(file,rowEntry); //rowEntry is a String
}  

我已经添加了公地-io到依赖关系

波姆。xml

<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.5</version>
 </dependency>  

它编译,但当我运行它时,它抛出一个异常

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/io/FileUtils
at com.RandCollections.StringFinder.writeToFile(StringFinder.java:704)
at com.RandCollections.StringFinder.menu(StringFinder.java:123)
at com.RandCollections.StringFinderMain.main(StringFinderMain.java:28)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.io.FileUtils
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 3 more   

我想我错过了一些东西,你能帮我指出一下吗?

共有2个答案

班经亘
2023-03-14

您可以尝试将库添加到您的类路径ex:

javac -classpath fileUtillibraywhatever.jar YourClass.java

编辑:

如果你的主类在一个包中

package com.yourpackage.test;
public class YourClass
{}

然后

   javac -classpath fileUtillibraywhatever.jar com/yourpackage/test/YourClass.java 

然后跑

java-classpath fileUtillibraywhatever。jar com/yourpackage/test/YourClass

我希望有帮助。。如果你正在使用iDEhttps://wiki.eclipse.org/FAQ_How_do_I_add_an_extra_library_to_my_project是什么样的路径?

经和洽
2023-03-14

如果它编译得很好,但在运行时抛出异常,则表示该依赖项在编译时在类路径上,而在运行代码时不在类路径上。

Maven负责编译类路径,并提供了对编译时间的依赖。您必须检查如何运行应用程序,并确保maven依赖项也在运行时类路径上——这与Maven无关,除非您将代码作为单元测试的一部分运行。

 类似资料:
  • 这是这个问题的后续问题: JAVAlang.ClassNotFoundException:org。springframework。靴子springapplicationmaven 我已经在Windows上使用Eclipse开发了一个web服务。我需要在Solaris工作站上运行它,在那里我得到ClassNotFoundException。 这是我的pom。xml:(maven shade插件是我读

  • 问题内容: java和slf4j的一些问题使用想法制作项目,可以。但是如果我尝试用gradle制作罐子,我会遇到一些问题。 build.gradle Test.java 终奌站: 输出: 我试图使用gradle / maven(mvn包)相同的问题。由于某些原因,它无法在类路径中找到Logger和LoggerFactory。 问题答案: 谢谢迈克尔记得关于胖子的事。在您的评论尝试谷歌搜索后:“ g

  • 问题内容: 我有一个文件需要读取,打印出整数,捕获异常并继续显示下一个整数,依此类推,直到不再有整数。 该文件包含:12 5 sd 67 4 cy 我希望它显示: 12 5 输入错误 67 4 输入错误 但是,它只给我12、5,后面是输入错误,然后停止。我尝试将所有内容放入while循环中,并且由于输入异常而无休止地循环。 我缺少什么,以便循环继续读取下一个int,依此类推? 问题答案: try

  • 问题内容: 在关于sqlite的android vogella教程期间,我遇到了令人讨厌的问题,并出现以下错误: 我无数次地一步步修改所有文件,以正确重新创建R. class。关于此错误的非常奇怪的是,我不知道为什么在“ com.example.de.vogella.android”中有关于“ com.example”的任何内容。这是某种标准生成的名称吗?我所有的包/名称/路径都从未以“ com.

  • 我正在迁移到elasticSearch并想找出一些问题。我将使用静态+动态映射(字段的静态类型,我将在搜索期间用于过滤,以后不会改变它们的类型)。据我所知,我可以将不同的数据放入索引中,然后对其进行更改。示例: 然后将此记录更改为: 编辑 主要目标是使用弹性而不是DB来增强性能。将有存储,我将只检索信息从它。搜索将取决于一些字段与静态映射,我不会改变他们的类型。但在将来,我可能需要添加一些字段或类

  • 我想从服务器加载配置,但当我使用 XMLHttpRequest我遇到异常 ava.lang.运行时异常:karate-config.js的评估失败com.intuit.karate.ScenarioContext)场景Context.java:211)在com.intuit.karate.步骤。StepActions.java:50)在com.intuit.karate.core.FeatureE