2016-08-19 120 views
0

我正在将项目从Maven迁移到Gradle,一切似乎都进展顺利。然而,我陷入了一种特殊的依赖。包括来自存储库依赖关系的备用jar

Maven中pom.xml的依赖被列入这样:

<dependency> 
    <groupId>com.company</groupId> 
    <artifactId>models</artifactId> 
    <version>1.0.0</version> 
    <scope>system</scope> 
    <systemPath>${project.basedir}/src/main/libs/models-templates-1.0.0.jar</systemPath> 
</dependency> 

我一直在寻找到如何实现的gradle中这样的事情,并没有找到一个明确的答案。

我想我需要先下载整个目录和提取的依赖,所以我开始寻找这种解决方案:How to add local .jar file dependency to build.gradle file?

然而,寻找到正在发生的事情有点多后,我发现,我居然需要声明一个替代的jar名称来下载。所以我仍然需要它查看正确的“模型”组名称,但我需要下载“模型 - tempaltes”jar。

谢谢。

+0

[如何将本地.jar文件依赖项添加到build.gradle文件?](http://stackoverflow.com/questions/20700053/how-to-add-local-jar-file-dependency-to -build-gradle-file) –

+0

所以我从这个问题开始。我想我可能会走上正轨。不同之处在于我需要从项目依赖项中提取特定的jar,并在项目编译之前将其包含在classpath中。 – Brodie

+0

我看了一下我的设置,以确保我无法解决您提到的问题提供的解决方案@MichaelEaster,我认为它是不同的,如果不是,请随时纠正我,我会关闭这个。我编辑了这个问题以更清楚地反映情况。 – Brodie

回答

1

我能找到解决方案。

的替代的pom.xml的模式:

<dependency> 
    <groupId>com.company</groupId> 
    <artifactId>models</artifactId> 
    <version>1.0.0</version> 
    <scope>system</scope> 
    <systemPath>${project.basedir}/src/main/libs/models-templates-1.0.0.jar</systemPath> 
</dependency> 

compile (group = 'com.company', name = 'models', version = '1.0.0') { 
    artifact { 
    name = 'models-data-template' 
    type = 'jar' 
    extension = 'jar' 
    } 
} 

需要注意的是这需要的类型和扩展属性的工作,我尝试瓦特/只替代名称,并导致了一堆错误。

希望这可以帮助别人。