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

依赖性问题-EclipseJava项目

施文彬
2023-03-14

我在eclipse中有一个JavaNLP项目(比如X),它在maven中有依赖项

现在,我已经使用JavaSwing为这个项目(x)构建了UI,JavaSwing是eclipse中的另一个项目(比如Y)。

当我运行项目Y(点击按钮时调用项目X)时,会给我带来错误,比如

java.lang.NoClassDefFoundError: edu/stanford/nlp/ie/NER分类文件

我认为这是因为,项目Y无法找到/识别我在项目X中添加的外部jar。

我也尝试过将所有这些外部罐子添加到Project Y的构建路径中,但没有任何效果。

你能帮我弄清楚如何处理这些依赖性问题吗。已经挣扎了4天了。

非常感谢。

共有2个答案

欧阳晗日
2023-03-14

我面临着类似的问题。但是我发现我的问题是maven依赖,而不是外部jar。
在我的例子中,我没有将主项目(即你的Y)创建为Maven项目,这就是为什么它不起作用。当我将它(Y)转换为Maven项目时,我的代码开始像魔法一样工作。

我只需要在项目Y中添加项目X的lib文件夹。

希望这也能解决你的问题。

韩照
2023-03-14

您需要首先通过maven添加外部JAR。我可以想出三种方法。

  1. 通过将JAR添加到存储库并访问它。它甚至可以在您的项目中,如下所示,唯一需要遵循的是jar的maven结构
<repository>
    <id>lib</id>
    <name>lib</name>
    <releases>
        <enabled>true</enabled>
        <checksumPolicy>ignore</checksumPolicy>
    </releases>
    <snapshots>
        <enabled>false</enabled>
    </snapshots>
    <url>file://${project.basedir}/lib</url>
</repository>
<dependency>
     <groupId>myjar_1.0</groupId>
     <artifactId>myjar_1.0</artifactId>
     <scope>system</scope>
     <version>1.0</version>
     <systemPath>${basedir}\src\lib\myjar_1.0.jar</systemPath>
 </dependency>

第二和第三种方法是非常不鼓励这样做。

另外,考虑使用Maven Huffin插件制作一个胖罐子,这样,所有需要的罐子都已经存在你的罐子里了。

 类似资料:
  • 获取错误: 错误:无法解析“”的依存关系:app@debugUnitTest/compileClasspath:无法解析com。googlecode。mp4parser:isoparser:1.1.22。打开文件显示详细信息 对于依存关系: 但对于依赖: Gradle同步成功。 尝试使用存储库: 详细错误: 无法解析“”的依存关系:app@StagingUnitTest/compileClassp

  • 我正在尝试安装bindiff。当我尝试通过archive manager安装时,我收到了以下消息“依赖关系不可满足:sun-java6-jre”。(我正在运行ubuntu 12.10) 我已尝试添加存储库 这并没有奏效。 我目前也安装了java 7,并完成了sudo apt-get更新 我尝试了“sudo apt-get install sun-java6-jdk”,我收到了以下内容: sudo

  • 在哪里可以找到repo以下载下面列出的缺失依赖项。我尝试了以下存储库,但找不到这些依赖项。 我的存储库是:

  • spring项目启动循环依赖存在随机性 如何理解: 1.jar包,本质上是zip包,zip包有个索引,这个索引每次打出来不一样,在不同的机器上也可能不一样,造成了这种现象 2.spring加载bean的顺序和索引顺序有关 f

  • 我正在使用IntelliJ13.5.1,我不了解maven的同步机制。我们将日志机制从logback切换到log4j。当我从pom中移除logback依赖项时,这些依赖项从maven中移除,而不是从项目中移除,即使我尝试重新导入maven模块。换句话说,IntelliJ正确地同步新库的添加,但不同步删除。 是这个IntelliJ版本的bug吗? 注意:当我从pom中移除依赖项时,jar仍然出现在生

  • 我尝试启动一个只从cassandra数据库读取表的小应用程序。 null 我创建了一个maven java应用程序,然后将pom.xml与必要的依赖关系放在一起: Spark Spark-Core2.10 1.6.0 进口: null