将已编译的java类添加到maven项目中

时间:2011-02-07 08:28:07

标签: maven-2

我收到了一些我需要添加到项目中的编译类。

我能想到的一个解决方案是使用这些文件创建一个jar并手动将其上传到存储库。显然这会奏效。但我想知道是否有更优雅的解决方案。可能我可以把它们放在项目结构下?因此,文件将被签入源控件,并且更容易维护他们的版本等。

2 个答案:

答案 0 :(得分:8)

根据对鲍里斯回答的评论,这是我的方法(在发现自己需要在昨天使用相同的内容之后,但无法找到我使用的答案的链接):

在项目目录中,创建一个名为repo的文件夹,我们将其用作基于文件夹的Maven存储库。

将以下文件存储库添加到项目pom.xml

<repositories>
    <repository>
        <id>file.repo</id>
        <url>file://${project.basedir}/repo</url>
    </repository>
</repositories>

将您的类打包为jar,并使用以下命令将它们部署到文件存储库:

mvn deploy:deploy-file
-Durl=file:///absolute/path/to/your-project/repo \
-DrepositoryId=file.repo \
-Dfile=path-to-your.jar \
-DgroupId=some.external.project.group \
-DartifactId=the-artifact-name \
-Dversion=1.0 \
-Dpackaging=jar;

在此之后,您可以使用上面传递的groupId,artifactId和version的值,在项目pom.xml中添加对jar的正常依赖关系。然后,您可以将repo文件夹添加到SVN,并将更改提交到pom.xml。任何检查项目的开发人员现在都可以毫不费力地使用相同的依赖项。

答案 1 :(得分:2)

第一个想法比检查您无法控制的二进制文件更好。因此,在jar中捆绑二进制文件,对其进行版本化并将其部署在存储库中。