Gradle不会从存储库导入jargs
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Gradle不会从存储库导入jargs相关的知识,希望对你有一定的参考价值。
我在我的代码中有这个导入
import jargs.gnu.CmdLineParser;
我的build.gradle有它的“依赖”
// https://mvnrepository.com/artifact/net.sourceforge.jargs/jargs
compile group: 'jargs', name: 'jargs', version: '1.0'
对于列出的所有其他依赖项,无论Gradle / Eclipse正在执行哪些依赖项,它们都会被导入/下载,但这只是拒绝。我在the jargs Maven page上发现了这个
Note: this artifact it located at WSO2 Dist repository (http://dist.wso2.org/maven2/)
我做了一些挖掘,并认为可能这个包不在通常的mavenCentral()点,所以我尝试在我的研究中找到的一个例子中添加另一个url
buildscript {
repositories {
mavenCentral()
maven { url "https://plugins.gradle.org/m2/" }
maven { url "http://dist.wso2.org/maven2/" }
}
dependencies {
classpath "gradle.plugin.com.github.onslip:gradle-one-jar:1.0.5
}
}
我通过Eclipse对我的Gradle项目进行了更新,但这并没有解决任何问题。我在过渡期间正在做的是手动下载jar并将其粘贴在“libs”文件夹中并添加
flatDir {
dirs 'libs'
}
这让我想去的地方。当我使用flagDir时,所有问题区域都会消失,但不会通过Maven仓库进行。我觉得我很亲密。
答案
我发现,如果我将备用网址添加到“存储库”部分,它就会起作用
repositories {
// Use jcenter for resolving your dependencies.
// You can declare any Maven/Ivy/file repository here.
//jcenter()
mavenCentral()
maven { url "https://plugins.gradle.org/m2/" }
maven { url "http://dist.wso2.org/maven2/" }
/*
flatDir {
dirs 'libs'
}
*/
}
我想我需要更好地理解“存储库”的用途,“buildscript”也有“存储库”。
另一答案
一方面的设置和另一方面的jargs
似乎存在多个问题。
对于您的设置:
buildscript
存储库用于插件及其依赖项。这就是设置构建所需的一切,- 常规的
repositories
用于获取构建中声明的代码的依赖关系,让我们称之为项目存储库。
因此,您需要将特定存储库添加到项目repositories
中是正常的。
请注意,您不需要将https://plugins.gradle.org/m2/
添加到项目存储库。
关于jargs
:
- 看起来像一个奇怪的工件,可以在不同的坐标处找到,具体取决于存储库
你的问题包含一个URL,表明该组是
net.sourceforge.jargs
而不仅仅是jargs
,但它不是在Maven Central中,而是在specific repository中 你的依赖声明使用组jargs
,它确实在你link to的其他存储库中有效。
但总而言之,这意味着jargs
具有不同的坐标,具体取决于存储库。我会确保你使用项目推荐的版本。
以上是关于Gradle不会从存储库导入jargs的主要内容,如果未能解决你的问题,请参考以下文章
将工件从 gradle 项目发布到 bintray(maven 存储库)