Tag: 依赖项

Eclipse插件项目与其他项目依赖项

我有一个Eclipse插件项目,它依赖于我在Eclipse工作区中的其他项目。 在“Java Build Path” – >“Projects”选项卡下添加项目依赖项,并在“Order and Export”中选择项目后,我得到一个java.lang.NoClassDefFoundError。 我假设其他项目没有正确地包含在插件中。 有谁知道如何解决这一问题? 谢谢,詹姆斯

如何自动添加gradle依赖项

我想知道是否有任何gradle任务或任何其他将添加依赖性的 util,例如 dependencies { … // so far dependencies compile ‘com.new.dependency:xy” } 在build.gradle文件中,而不是手动键入它。 我正在尝试编写IntelliJ插件,它会自动将库添加到任何项目中。 到目前为止,我需要分析/解析文档内容,这很乏味。 例如,当您转到IntelliJ中的项目设置并添加库时,代码会自动添加。

Hadoop maven依赖性错误 – 找不到hadoop类

尽管我将以下依赖项导入到我的pom中,但未导入相关的Hadoop类(org.apache.hadoop.*) 。 1.0.4 org.apache.hadoop hadoop-client ${hadoop.version} org.apache.hadoop hadoop-core ${hadoop.version} org.apache.hadoop hadoop-examples ${hadoop.version} org.apache.hadoop hadoop-tools ${hadoop.version}

Eclipse在启动配置中使用错误的maven依赖项

我正在开发一个项目,使用Maven进行依赖/构建/任何事情(项目生命周期管理或某事),我正在使用Eclipse进行开发和测试。 该项目使用Vert.x(最新),我正在尝试使用Hazelcast进行一些集群管理,但我遇到了一个错误,其中的Hazelcast版本Vert.x声明为依赖(3.6.3),解决方案显然是升级到更新版本。 我已经在我的pom.xml添加了更新的Hazelcast依赖项: com.hazelcast hazelcast [3.7,) 并且maven确实更新了依赖项(实际上Eclipse一旦我保存pom.xml文件就称为maven更新 – 非常整洁),所以我得到了依赖树: $ mvn dependency:tree [INFO] Scanning for projects… [INFO] [INFO] ———————————————————————— [INFO] Building project 3.8.4 [INFO] ———————————————————————— [WARNING] The POM for jfree:jfreechart:jar:1.0.8 is missing, no dependency information available [INFO] [INFO] — maven-dependency-plugin:2.8:tree (default-cli) @ project — [INFO] my.group:project:jar:3.8.4 [INFO] +- some.private.dep … [INFO] | +- org.junit:junit4-engine:jar:5.0.0-ALPHA:compile (version […]

Eclipse Java插件项目中的传递依赖项

看来,我的Eclipse Oxygen 3传递依赖关系在Plugin-Projects中没有得到解决。 考虑以下项目,其中A仅依赖于B,B取决于C: 虽然在JDK 1.8中运行A结果很好(正如预期的那样),但在JDK 9中我得到了众所周知的知识 Exception in thread “main” java.lang.NoClassDefFoundError: c/C at bB(B.java:9) at aAmain(A.java:8) Caused by: java.lang.ClassNotFoundException: cC at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:185) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496) … 2 more 我知道,我没有声明任何模块,但我想,省略它们只是保持项目不变,即使在JDK 9中。当我直接在A MANIFEST.MF中导入项目C时,所有模块都在JDK 1.8中工作。 那么如何在没有声明模块的情况下让项目运行?

Force Maven仅使用第一级依赖项

我有一个Maven Java项目。 在编译项目时,我不希望通过一系列子依赖项偶然满足我的项目依赖项。 在构建最终战争时,当maven必须检查所有使用的依赖项并为战争添加必要的lib时,这是可以的,但是在编译代码时我想确保只使用直接依赖项。 为什么? 假设我有两个依赖项: com.package module-1 com.package module-2 对于我们的项目模块-1和模块-2提供完全不同的目的,但在模块-2的依赖树中的某处,使用模块-1。 我删除了module-1依赖项,但maven继续构建我的项目而没有编译错误,因为它从module-2子依赖项中解析了module-1。 这种变化没有被注意到。 一段时间后我们决定删除module-2,因为我们不需要它。 很奇怪,但我们不能再使用从模块1导入的编译类,并且没有连接到模块2逻辑。 这是一个简单的案例,但在大项目中,这可能会造成相当大的依赖性。

传统的开源Java应用程序

我已经将Java用于我的“家庭项目”一段时间了,现在需要通过github或Google Code这样的存储库来提供我的一些项目。 只要我是该项目的唯一开发人员,并且只要我一直在Eclipse中工作,那么完全没有关于构建和运行它的问题。 一切都很好。 问题基本上是,如果有人要我分享,我该怎么办? 🙂 首先要做的是,使用Maven等工具构建项目。 在这种情况下,无论是否安装了Eclipse,或者更喜欢IDEA,他都可以下载我的项目并使用Maven构建。 或者,导入Eclipse / IDEA并构建。 所以,澄清这个问题,这里有两点: 我的目录结构应该是什么样的? 文件夹,如src,bin,还有其他什么? 我的应用程序应该运行的方式是什么? 例如,我的应用程序需要log4j才能运行。 在构建软件包时,Maven解决了这种依赖关系。 但是当构建包时,你应该手动提供log4j的路径(使用java -cp … ) – 如果我只想提供.sh和.cmd脚本以方便用户,那么消除这个要求的方法是什么? ?

管理java类路径上的冲突

我暴露了我的背景: 我有两个在独特的Weblogic Server上运行的Java程序:程序A和程序B.这些程序由两个ksh启动: programA.ksh和programB.ksh 两者都需要C.jar但是在不同的版本中(但具有完全相同的包和类): 程序A需要C-1.0.jar 程序B需要C-2.0.jar 我确切地说两个程序共享相同的weblogic类路径。 所以,我的classpath按顺序包含: ….. C-1.0.jar C-2.0.jar ….. 我怎么能这样做,每个程序找到它的好库? 例如,根据我的实际配置,程序B将始终使用C-1.0.jar而不是C-2.0.jar,因为类路径上的优先级位置。

ejb与客户端工件 – 运行时依赖?

我们公司在两个工件中创建了一个ejb。 impl工件包含实现,客户端工件包含所有接口。 这意味着impl工件对客户端工件具有编译依赖性。 现在,在运行时,客户端工件需要impl工件 – 否则容器无法注入所需的对象。 这意味着耳朵需要包含所有客户端工件的impl工件。 这是否意味着客户端工件应该对impl工件具有runtime依赖性? 或者是否应该避免这些“循环”依赖,即使一个方向是compile而另一个是runtime ?

混合不同版本的Java库

我的项目使用具有自己的依赖项的Java库(例如Hadoop,Jetty)。 我最终得到了相同依赖项的不同版本,比如ant 1.4.5,1.4.6。 我的项目可能想使用ant 1.4.7。 这是一个小例子,可以通过HTTP Commons等更大的依赖关系变得更复杂。 如何让所有库和依赖项都发挥得淋漓尽致? 有没有办法隔离每个库(Hadoop,Jetty),以便它们只使用它们的依赖项?