【问题标题】:Can I add LOCAL source jars to maven 2 build without installing them so they can be referenced in eclipse?我可以在不安装它们的情况下将 LOCAL 源 jar 添加到 maven 2 构建中,以便在 eclipse 中引用它们吗?
【发布时间】:2012-04-03 20:20:00
【问题描述】:

请注意,这是源 jars - 不是编译的 jars。

假设我有以下几点:

<dependency>
    <groupId>org.swinglabs</groupId>
    <artifactId>swingx</artifactId>
    <version>0.9.2</version>
    <scope>system</scope>
    <systemPath>${project.basedir}/lib/swingx-0.9.3.jar</systemPath>
</dependency>

如何添加我的源 jar 以便在 Eclipse 中引用它们? (我知道我可以右键单击并添加到 jar 作为源 - 但我希望 maven 导入自动执行此操作)

【问题讨论】:

  • 你能解释一下你为什么要这样做吗?你期望 Maven 在构建类路径上对这些做什么?编译打包好的源文件?
  • 你在 Eclipse 中使用 m2e 吗?
  • 这不是重复的——不是下载jar——是在项目中添加本地jar,因为无法下载。
  • 我已添加到我的答案中,以展示如何处理公共存储库中不可用的文件。

标签: maven jar maven-2


【解决方案1】:

如果您使用的是m2e Eclipse plugin,则可以选择下载所有依赖项的源代码:

  • 右键单击项目
  • Maven > 下载源

如果你不使用 m2e,你可以使用命令行下载源代码

mvn dependency:sources

要将它们导入 Eclipse,您可以使用

mvn eclipse:eclipse -DdownloadSources=true

不过,处理这个问题的最简单方法是通过 m2e。我强烈建议安装它,因为它将简化 Eclipse 中的所有其他 Maven 处理。

如果公共存储库中没有可用的源,您也可以

在这两个中,推荐第一个(本地 Maven 存储库/代理)。

【讨论】:

  • 但关键是这在 maven 链接中不可用。这是我要添加的本地jar
  • 我已经添加到我的答案中来解释如何处理这个问题。
【解决方案2】:

从未尝试过,但这应该可以工作

          <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-eclipse-plugin</artifactId>
                <version>2.0</version>
                <configuration>
                    <downloadSources>true</downloadSources>
                </configuration>
            </plugin>

这样也可以

 mvn -Declipse.downloadSources=true eclipse:eclipse

看到这个http://maven.apache.org/plugins/maven-eclipse-plugin/eclipse-mojo.html#downloadSources

【讨论】:

  • 这适用于无法下载的 jar - 它们存在于本地目录中
  • 哦,我对你以前版本的问题感到困惑。那么,您的本地仓库中没有swingx-version-source.jar
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-12
  • 1970-01-01
  • 2013-06-11
  • 1970-01-01
  • 2015-11-05
相关资源
最近更新 更多