根据我的经验,Maven 在小型/实验性应用程序中通常是一种杀伤力。但依赖管理是 Maven 非常有用的功能,实际上也是唯一对上述类型的应用程序真正有帮助的功能。
我想知道是否可以有一个非常最小和轻量级的 Eclipse-Maven 集成,它仅以尽可能简单的方式将 Maven 依赖项添加到 Eclipse 项目类路径。
特别是我不想:
- 适用于任何 Maven 约定(包括项目布局约定)
- 安装并使用任何特定的 Eclipse 插件(Eclipse 根本不应该知道它是“Maven 项目”并以任何特殊方式对待它)
- 以任何其他方式依赖/绑定(bind) Maven,而不是将其用作轻量级 jar/库下载器
我的第一个(也是唯一的)想法是使用 Eclipse Maven plugin从命令行管理项目类路径。但默认情况下,这个插件的作用远不止于此(设置默认的 Maven 项目布局、管理构建器)。我可以限制这个插件只做我想做的事吗?
或者我可以通过其他方式实现我所描述的目标吗?
最佳答案
我找到了一个非常适合我在问题中描述的需求/用例的解决方案:
1.我在 Eclipse 项目根目录中创建了非常小的 pom 文件:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.sobczyk.piotr</groupId>
<artifactId>mvn-eclipse-test</artifactId>
<version>1.0.0</version>
<build>
<sourceDirectory>src</sourceDirectory>
<outputDirectory>bin</outputDirectory>
</build>
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
</dependency>
</dependencies>
</project>
这个 .pom 文件由三部分组成:
- 必需的 Maven 东西,即。模型版本和 GAV
build
部分,其中 Maven 默认源和输出目录并覆盖以模拟 Eclipse 环境(这是有关限制 maven-eclipse-plugin 行为的问题部分的答案,以及其他一些 eclipse:eclipse 目标选项像buildcommands
在一些更复杂的情况下可能有用)dependency
部分列出了我需要在项目类路径上具有的依赖项
2.我从命令行调用了以下命令:
mvn eclipse:configure-workspace -Declipse.workspace=C:/myworkspace
cd C:/myworkspace/myproject
mvn eclipse:eclipse
3.每次我想从 Maven 文件更新 Eclipse 项目类路径时,我可以执行以下两项操作之一:
- 从命令行调用最后两行
- 将 mvn eclipse:eclipse 绑定(bind)到 Eclipse external tool configuration单击即可调用它
关于java - 非常轻量级的 Eclipse-Maven 集成 - 仅依赖项管理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10122614/