我读这一点:
http://www.gradle.org/docs/current/userguide/artifact_management.html
要了解如何发布/上传我的神器到网络驱动器/文件共享这是一个要求(我们有一个maven回购启动和运行,但需要对文件共享进行转储一些文物)。 我已经发现的例子更侧重于部署到存储库,Maven的,常春藤等。
我有我建立的gradle使用1.2以下的build.gradle文件一个简单的Eclipse Java项目:
apply plugin: 'java'
sourceSets {
main {
java {
srcDir 'src'
}
}
test {
java {
srcDir 'test'
}
}
}
repositories {
flatDir {
name "fileRepo"
dirs "file://internal.newtwork.drive/folder/test"
}
}
uploadArchives {
repositories {
add project.repositories.fileRepo
}
}
我在gradle这个文档在哪里可以了解如何将资源复制到远程文件共享?
我试图更新协议和基于以下答案dir属性,但我得到这个错误:
- 出了什么问题:执行失败的任务“:uploadArchives”。
无法发布配置“:档案”。 java.io.FileNotFoundException:/internal.newtwork.drive/folder/test/sample-gradle-java-unspecified.jar(没有这样的文件或目录)
目标是正确的那么请问flatDir回购不支持networkdrives?
你应该定义下列参数:
archivesBaseName = 'yourappname'
group = 'your.app.package'
version = '1.0.0'
您的网址并没有提及的方案(HTTP:,文件:等)。 我不知道你是否能逃脱使用文件:URL,或是否需要给我们一个不同的语法来指定一个目录,而不是一个HTTP URL,但无论哪种方式,你需要正确地形成的URI Windows的UNC路径。
见这个问题的更多细节。
它看起来像你穿越你的电线。 该网址只会是你正在显然没有使用常青藤存储库声明的一部分。 文件系统存储库将由flatDir块,然后被引用来处理add project.repositories.fileRepo
声明。 我建议试图在flatDir的完整路径dir
变量,否则阻力最小的路径可能只是扔一起简单的手动文件拷贝(或其他转移)的任务,然后将其添加到主部署任务你使用。
//尝试这个,
apply plugin: 'java'
apply plugin: 'maven'
repositories {
maven {
url "$archivaUrl"`enter code here`
credentials {
username = "$userName"
password = "$passWord"
}
}
}
// Dependencies
dependencies {
// specify the lib files at compile and run time
compile fileTree(dir: 'lib', include: ['**/*.jar','*.jar'])
runtime fileTree(dir: 'lib', include: ['**/*.jar','*.jar'])
}
// source path
sourceSets {
main {
java {
srcDirs 'src'
}
}
}
uploadArchives {
repositories {
mavenDeployer {
repository(url: "$archivaUrl") {
authentication(userName: "$userName", password: "$passWord")
}
pom.version = "1.0-SNAPSHOT"
pom.artifactId = "fd-common"
pom.groupId = "com.somename.common"
}
}
}