Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Can';t在Maven依赖项中将源代码附加到jar文件_Java_Eclipse_Maven_M2eclipse - Fatal编程技术网

Java Can';t在Maven依赖项中将源代码附加到jar文件

Java Can';t在Maven依赖项中将源代码附加到jar文件,java,eclipse,maven,m2eclipse,Java,Eclipse,Maven,M2eclipse,我有一个maven项目a,它使用我团队1.0版本的另一个项目B的jar文件。project B的版本1.0已提交到本地Maven存储库 问题是项目B不包含源代码。因此,在项目A中,我右键单击包资源管理器中Maven Dependencies下的JAR B,选择Java Source Attachment并在项目B(在版本1.1中,我不再有以前版本的源代码)源文件夹中设置位置路径(xxx/projectB/src/main/java/)。但Maven似乎找不到任何源类。添加到B pom中(我认为其

我有一个maven项目a,它使用我团队1.0版本的另一个项目B的jar文件。project B的版本1.0已提交到本地Maven存储库

问题是项目B不包含源代码。因此,在项目A中,我右键单击包资源管理器Maven Dependencies下的JAR B,选择Java Source Attachment并在项目B(在版本1.1中,我不再有以前版本的源代码)源文件夹中设置位置路径(
xxx/projectB/src/main/java/
)。但Maven似乎找不到任何源类。

添加到B pom中(我认为其中一个应该可以工作):


org.apache.maven.plugins
maven依赖插件
安装
安装
来源
org.apache.maven.plugins
maven源插件
附加来源
罐子

解决此问题的两种方法:

  • 要求B团队使用Maven发布插件。默认情况下,发布插件将在发布版本时上载源代码和javadoc工件
  • 自己上传B源工件。因为您似乎在本地拥有它,所以将其上传到Maven存储库。然后您应该能够检索它
  • 使用将它们安装到本地存储库(在本地计算机上)。文档甚至显示了如何对源工件执行此操作的示例。缺点是,它只对您可见,对其他人不可见

  • 因为您使用的是m2eclipse,所以您可以右键单击该项目,然后选择Maven>下载源代码。

    我不能。因为B项目不在我的代码库中。有没有更优雅的方法?也许不优雅,但它可以工作谢谢。似乎Maven依赖性没有什么诀窍。我必须请人将B与源代码一起重新上载到Maven。我有添加了另一个您可以自己完成的(本地)解决方案(Maven安装插件)。
    <build>
                    <plugins>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-dependency-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>install</id>
                                    <phase>install</phase>
                                    <goals>
                                        <goal>sources</goal>
                                    </goals>
                                </execution>
                            </executions>
                        </plugin>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-source-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>attach-sources</id>
                                    <goals>
                                        <goal>jar</goal>
                                    </goals>
                                </execution>
                            </executions>
                        </plugin>
                    </plugins>
                </build>