【问题标题】:Ubuntu: Gradle maven-publish plugin - Failing to connect by sftpUbuntu:Gradle maven-publish 插件 - 无法通过 sftp 连接
【发布时间】:2015-10-03 00:28:20
【问题描述】:

我正在尝试让我的 gradle 脚本上传到一个 sftp 帐户,但它一直失败并出现错误,

未能部署工件:无法将工件 com.himself12794:Heroes-Mod:jar:0.9-rev1 从/到远程传输 (sftp://himself1@ftp.himself12794-develops.com:18765/public_html/maven) : 无法写入资源 'com/himself12794/Heroes-Mod/0.9-rev1/Heroes-Mod-0.9-rev1.jar'

我可以通过 sftp 命令连接:

sftp -P 18765 himself1@ftp.himself12794-develops.com

但是,publishMavenJavaPublicationToMavenRepository 任务失败,出现上述错误。

这是一个 Minecraft Forge 模组,如果这能说明问题的话。

我的 build.gradle 是这样的:

    buildscript {
        repositories {
            jcenter()
            maven {
                name = "forge"
                url = "http://files.minecraftforge.net/maven"
            }
        }
        dependencies {
            classpath 'net.minecraftforge.gradle:ForgeGradle:2.0-        SNAPSHOT'
        }
    }
    apply plugin: 'net.minecraftforge.gradle.forge'
    apply plugin: "maven-publish"

    // for people who want stable
    /*plugins {
        id "net.minecraftforge.gradle.forge" version "2.0.1"
        id "maven-publish"
    }*/

    repositories {
        maven {
            name = "himself12794-develops"
            url = "http://maven.himself12794-develops.com"
        }
    }

    version = "0.9-rev1"
    group = "com.himself12794" 
    archivesBaseName = "Heroes-Mod"

    minecraft {
        version = "1.8-11.14.3.1514"
        runDir = "run"
        mappings = "snapshot_20141130"
        // makeObfSourceJar = false 
    }

    dependencies {
        compile "com.himself12794:powersAPI:1.1-rev2"
    }

    publishing {
        publications {
            mavenJava(MavenPublication) {
                from components.java
            }
        }
    }

    publishing {
        repositories {
            maven {
                url "sftp://himself1@ftp.himself12794-develops.com:18765"
            }
        }
    }

    processResources
    {
        inputs.property "version", project.version
        inputs.property "mcversion", project.minecraft.version

        from(sourceSets.main.resources.srcDirs) {
            include 'mcmod.info'


            expand 'version':project.version, 'mcversion':project.minecraft.version
        }

        from(sourceSets.main.resources.srcDirs) {
            exclude 'mcmod.info'
        }
    }

非常感谢任何人提供的任何帮助。

【问题讨论】:

  • 你有没有完全解决过这个问题?我在使用 Gradle+Maven+SFTP 时遇到了类似的问题
  • @MarkKCowan 如果我没记错的话,我可以使用夜间构建来规避这个问题,但如果你遇到同样的问题,它可能已经潜入他们的构建中

标签: java maven ubuntu gradle sftp


【解决方案1】:

我还没有解决这个特定的问题,但是我发现导致我尝试使用 maven-publish 插件的原始 maven 插件的问题实际上是当前稳定版本的 Gradle (2.7) 的问题。使用当前的夜间包装器构建使我能够规避这一点。

【讨论】:

    猜你喜欢
    • 2012-02-14
    • 1970-01-01
    • 1970-01-01
    • 2015-12-25
    • 1970-01-01
    • 2015-04-08
    • 1970-01-01
    • 1970-01-01
    • 2015-07-30
    相关资源
    最近更新 更多