2009-09-23 53 views
14

在调试时查找库源文件时,如何使用m2eclipse教导Eclipse将源代码.jar包含在源代码路径的本地Maven存储库中?如何教Eclipse以在源路径中包含Maven源代码包?

+0

你有没有发现,你工作的答案吗? – Cuga 2010-01-29 17:34:30

+0

@Cuga:不,我没有。似乎对你来说是一样的。 – desolat 2010-02-01 08:11:09

+1

我有同样的问题 - 请参阅我的回答,我希望它能为您解决这个问题。 – Cuga 2010-02-01 15:27:18

回答

6

我在此完全相同problem--去除死ImageShack的链接我使用Maven Source Plugin将源代码部署到我们的仓库中,并且当我将该项目包含在单独的项目中时,尽可能地尝试,它不包括Eclip中的源代码se建立路径。我之前完成了以前的工作,并且我知道可以将源代码包含在构建路径中,以便Eclipse将自动链接集成调试器中的源代码,只需单击其他答案中所述的“下载源代码”即可。

这是我的(这不是为我工作)。我已经得到这个代码片段从Maven的源插件的网页:

 <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-source-plugin</artifactId> 
     <executions> 
      <execution> 
       <id>attach-sources</id> 
       <goals> 
        <goal>jar</goal> 
       </goals> 
      </execution> 
     </executions> 

这将打包源在一个单独的JAR,并把它上传到我们的回购,但它不会自动安装到Eclipse调试器。最后,我发现我需要一个<configuration><attach>true</attach></configuration>片段包括,就像这样:

 <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-source-plugin</artifactId> 
     <executions> 
      <execution> 
       <id>attach-sources</id> 
       <goals> 
        <goal>jar</goal> 
       </goals> 
      </execution> 
     </executions> 
     <configuration> 
      <attach>true</attach> 
     </configuration> 

在此之后,源自动通过右键单击连接到Eclipse调试器在Package Explorer中的项目,并做“的Maven>下载资源”。

我希望这可以解决您的问题。

+0

我将插件配置复制到我的pom.xml中。我也清理存储库,然后安装mvn。但是,我仍然无法让调试器在调试过程中自动附加我的maven依赖库,例如spring-core。你能提供更多的细节吗? – 2010-05-03 22:04:55

+0

您是否尝试在包资源管理器中右键单击该项目并执行“Maven>下载源”? – Cuga 2010-05-04 12:42:27

+0

我不得不按照@ felipe-fernandez – lrkwz 2012-12-04 09:34:12

3

转到Window-> Preferences-> Maven-> Installations,并确保Maven被配置为使用Maven安装而不是嵌入器。

如果未配置,请选择添加...并浏览到Eclipse安装的根目录,然后确定选择。

M2eclipse然后将读取您的设置文件,发现您的本地存储库,并自动附加本地存储库中可用的源。

如果m2eclipse指向您的本地存储库,您应该可以右键单击并选择Maven->下载源,或启用首选项以自动下载它们。如果来源已经存在,则应该简单地附加。有关详细信息和截图,请参阅this answer

如果在执行以下步骤后,仍未连接源代码,则表明您的Maven安装有问题。您可以尝试将m2eclipse插件更新到最新版本,以查看是否可以解决问题。

+0

我已经使用外部Maven安装。但是源代码包无法识别并添加到源路径中。我到底在哪里可以找到Eclipse中项目的源查找路径配置? – desolat 2009-09-24 08:11:48

+0

为我工作像魅力。 – 2012-09-21 10:29:19

10

您应该启用下载工件来源优先。

去除死ImageShack的链接

对于现有的文物则可以使用下载源行动:

+1

@Robert,OP似乎暗示源jar已经在本地存储库中。如果是这种情况,设置下载源将导致来源的第二个副本被下载到嵌入的本地仓库,而不是由Maven的安装规定。 – 2009-09-24 08:11:04

+0

刮的是,我刚刚看了我的答案 – 2009-09-24 08:19:21

+1

软件包下载的源的评论,他们在调试时绝对不会和源查找路径上。 – desolat 2009-09-24 09:15:44

0

请记住,根据您的m2eclipse版本,您可能会受到this problem的影响。调试插件时,该问题会中断源代码查找。

2

我也遇到了由阿纳托利描述的m2eclipse bug。它仍然没有解决,在我看来,这也是提问者问题的原因。

+0

的建议手动选择sources jar我认为你错了,这个bug只是指插件调试。 – lrkwz 2012-12-04 09:30:13

3
  • 首先下载jar源代码。在包资源管理器,Maven的依赖关系,找到你想要的jar,右键单击它,Maven,下载源。

  • 下载的源罐子是你的家,文件夹的.m2,仓库,然后通过包名导航,直到你得到的XXX-sources.jar。

  • 然后调试Maven项目。在调试透视图中,调试视图,右键单击您的项目,编辑源代码查找,添加...,外部存档并选择下载的源代码jar。

相关问题