Java 将依赖项项目添加到类路径的更好方法?
我正在使用EclipseIDE开发一个java应用程序,我有两个项目SampleProject1和SampleProject2,SampleProject2依赖于SampleProject1。 我找到了两种添加依赖项项目的方法。 1) 制作一个SampleProject1的jar,并使用以下类路径条目将其包含在SampleProject2库中。 2) 导出SampleProject1的源代码,如下所示 如果我的理解不正确,请告诉我 查询: 1) 添加依赖项项目的最佳方法是什么?Java 将依赖项项目添加到类路径的更好方法?,java,eclipse,classpath,Java,Eclipse,Classpath,我正在使用EclipseIDE开发一个java应用程序,我有两个项目SampleProject1和SampleProject2,SampleProject2依赖于SampleProject1。 我找到了两种添加依赖项项目的方法。 1) 制作一个SampleProject1的jar,并使用以下类路径条目将其包含在SampleProject2库中。 2) 导出SampleProject1的源代码,如下所示 如果我的理解不正确,请告诉我 查询: 1) 添加依赖项项目的最佳方法是什么? 2) 在第二种方
2) 在第二种方法中,“combineaccessrules=“false”是什么意思?它真的需要吗?要告诉Eclipse依赖关系,可以在
SampleProject2
中设置Java构建路径
以要求SampleProject1
逐步:
SampleProject2
,在本例中)Properties
Java构建路径
项目
选项卡Add…
SampleProject1
,在本例中)OK
直到关闭所有内容package com.example.sampleproject2;
import com.example.sampleproject1.UsefulClassNeededElsewhere;
public class ClassThatNeedsSomethingUseful {
private UsefulClassNeededElsewhere useful = new UsefulClassNeededElsewhere();
public UsefulClassNeededElsewhere getUseful() {
return useful;
}
}
UsefulClasseNeedElsewhere:
package com.example.sampleproject1;
public class UsefulClassNeededElsewhere {
}
最后是如上所述的依赖项设置。这将使一切正常工作,您的工作区应如下所示:
如您所见,没有错误标记
要记住的事情
您仍然需要您的构建系统来了解此依赖关系。例如,您的Ant文件或其他需要了解的内容。有些构建系统在Eclipse中具有出色的工具,因此将从构建系统计算依赖关系,而不是在设置中手动复制。要告诉Eclipse此依赖关系,您可以设置
JSampleProject2
中的ava生成路径需要SampleProject1
逐步:
右键单击Java项目(SampleProject2
,在本例中)
选择Properties
在属性中,选择左侧的Java构建路径
选择项目
选项卡
按Add…
选择相关项目(SampleProject1
,在本例中)
按OK
直到关闭所有内容
现在应该对你有用了
以下是您的上述目的地的屏幕截图:
它工作的例子
以两个名为的项目为例。下面是我在磁盘上的内容(不包括非java和.project文件):
需要使用某种语言的类:
package com.example.sampleproject2;
import com.example.sampleproject1.UsefulClassNeededElsewhere;
public class ClassThatNeedsSomethingUseful {
private UsefulClassNeededElsewhere useful = new UsefulClassNeededElsewhere();
public UsefulClassNeededElsewhere getUseful() {
return useful;
}
}
UsefulClasseNeedElsewhere:
package com.example.sampleproject1;
public class UsefulClassNeededElsewhere {
}
最后是如上所述的依赖项设置。这将使一切正常工作,您的工作区应如下所示:
如您所见,没有错误标记
要记住的事情
您仍然需要您的构建系统来了解此依赖关系。例如,您的Ant文件或其他需要了解的内容。某些构建系统在Eclipse中具有出色的工具,因此依赖关系将从构建系统计算,而不是在设置中手动复制。您是否使用任何类型的构建工具?(例如Maven、Gradle)在一段时间内还没有使用蚂蚁,但是你应该能够创建一个多模块的设置,其中一个模块依赖于另一个模块。也许这个问题和答案是有帮助的。我不认为我们应该考虑Ant,回答我的问题,这是关于包含依赖性的更好的方法。我想你已经提到了一个好的解决方案。Project1并将其包含在SampleProject2库中。唯一的缺点是,如果您有更多依赖项,则手动操作可能会变得繁琐且容易出错。这是Ant和Ivy、Maven、Gradle等工具为您提供的自动化工具。如果我以任何方式误解了您,请纠正我。是的@IndrekOts,您是正确的,但不是maint为此,我们可以向消息来源指出,您是否使用任何类型的构建工具?(例如Maven、Gradle)在一段时间内还没有使用蚂蚁,但是你应该能够创建一个多模块的设置,其中一个模块依赖于另一个模块。也许这个问题和答案是有帮助的。我不认为我们应该考虑Ant,回答我的问题,这是关于包含依赖性的更好的方法。我想你已经提到了一个好的解决方案。Project1并将其包含在SampleProject2库中。唯一的缺点是,如果您有更多依赖项,则手动操作可能会变得繁琐且容易出错。这是Ant和Ivy、Maven、Gradle等工具为您提供的自动化工具。如果我以任何方式误解了您,请纠正我。是的@IndrekOts,您是正确的,但不是maint我们可以指出它的来源