如何从 Android Gradle 构建通过 FTP 传输文件?

2023-11-25

我正在尝试在 Gradle 构建后通过 FTP 传输签名的 APK。我已经添加了将签署 APK 的新构建配置,但我一直在尝试弄清楚如何调用 FTP 任务。

我找到了一个官方的样本第 59.6 条,但是它抱怨它无法解析依赖项 org.apache.ant:ant-commons-net:1.8.4。所以显然我在这里遗漏了一些明显的东西,比如在哪里放置给定的 jar 文件或引用它,尽管我认为 Maven 会处理这类事情?

作为参考,这里是链接的示例,该示例失败并显示有关依赖项的消息:

configurations {
    ftpAntTask
}

dependencies {
    ftpAntTask("org.apache.ant:ant-commons-net:1.8.4") {
        module("commons-net:commons-net:1.4.1") {
            dependencies "oro:oro:2.0.8:jar"
        }
    }
}

task ftp << {
    ant {
        taskdef(name: 'ftp',
                classname: 'org.apache.tools.ant.taskdefs.optional.net.FTP',
                classpath: configurations.ftpAntTask.asPath)
        ftp(server: "ftp.apache.org", userid: "anonymous", password: "[email protected]") {
            fileset(dir: "htdocs/manual")
        }
    }
}

失败并显示以下消息:

> Could not find org.apache.ant:ant-commons-net:1.8.4.

这是我完整的 gradle.build 文件,删除了一些敏感信息:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.4'
    }
}

apply plugin: 'android'

dependencies {
    compile files('libs/android-support-v4.jar')
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 17
    }

    signingConfigs {
        signed {
            storeFile file("(removed)")
            storePassword "(removed)"
            keyAlias "(removed)"
            keyPassword "(removed)"
        }
     }

    buildTypes {
        signed {
            debuggable false
            jniDebugBuild false
            signingConfig signingConfigs.signed
        }
    }
}

configurations {
    ftpAntTask
}

dependencies {
    ftpAntTask("org.apache.ant:ant-commons-net:1.8.4") {
        module("commons-net:commons-net:1.4.1") {
            dependencies "oro:oro:2.0.8:jar"
        }
    }
}

task ftp << {
    ant {
        taskdef(name: 'ftp',
                classname: 'org.apache.tools.ant.taskdefs.optional.net.FTP',
                classpath: configurations.ftpAntTask.asPath)
        ftp(server: "(removed)", userid: "(removed)", password: "(removed)", remoteDir: "(removed)") {
            fileset(dir: "(removed)") {
                include(name: "(removed)")
            }
        }
    }
}

您尚未声明可用于解析已声明工件的存储库。尝试将以下代码片段添加到您的 build.gradle 文件中:

repositories{
    mavenCentral()
}

cheers,

René

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 Android Gradle 构建通过 FTP 传输文件? 的相关文章

随机推荐

  • Angular ui-router 的 url 查询参数包含“点”

    在我们的 Angular 应用程序中 我们必须处理包含 点 的 id 例如 book id 123 456 我们在使用 id 作为 url 参数时遇到问题 如果通过 Angular 进行导航 即单击调用的链接 则一切正常 state go
  • 如何用一种方法转义java中的一组特殊字符?

    我使用 lucene 搜索 但 lucene 有一堆特殊字符需要转义 例如 我在转义这些字符时遇到问题 因为它们太多了 如果我使用 String replaceAll 方法 我最终会得到一长串用于转义字符的代码 最好的办法是什么 谢谢 还有
  • Grunt 连接任务和中间件 Access-Control-Allow-Origin

    我想允许访问跨源调用 我需要能够对服务器执行 REST API 调用 我的 connect grunt 任务配置如下 connect options port 9000 Change this to 0 0 0 0 to access th
  • int (Int32) 被视为 .NET 中的对象还是基元(不是 int?)?

    是 int 又名Int32 一个对象 或者 NET中的一个原语 我不是在问关于int 我在保存的单词上按了 F12int并得到 public struct Int32 IComparable IFormattable IConvertibl
  • 使用 onSelectionChange 时我做错了什么

    我发现了这个触发器onSelectionChange e 在 Developers google com 上 如果选择了单个空单元格 则应将背景设置为红色 我仅通过复制和粘贴无法得到该结果 我不认为我错过了任何一步 我们将不胜感激 The
  • Maven 更新项目在 Eclipse 中做什么?

    什么是 Maven gt 更新项目 在 Eclipse 中做什么 它将 Eclipse 项目设置与 pom xml 的设置同步 例如 如果您更改重要的插件设置 例如输出 java 版本 您会发现 Eclipse 会要求您更新项目 然后项目中
  • 一个 FXML 文件的多个控制器

    我有一个由一个控制器控制的 fxml 文件 我想将控制器分成多个部分 就好像放在一个控制器中会生成很长的代码一样 不幸的是 fx controller 只能放在根目录中 对于如何分离控制器有什么建议吗 我建议创建自定义控件 使用几个较小的
  • .htaccess 在 Linux(Debian) Apache2 中不起作用

    我在用apache2 我的虚拟服务器 已经与我一起安装Debian 一切都很顺利 但现在我的问题 htaccess RewriteEngine On RewriteCond REQUEST FILENAME d RewriteCond RE
  • 带浮点数的 Numpy bincount()

    我正在尝试获取 float 类型的 numpy 数组的 bincount w np array 0 1 0 2 0 1 0 3 0 5 print np bincount w 如何将 bincount 与 float 值而不是 int 一起
  • php统计爆炸后的字符串数量

    这是我的代码 输出是 0 a 1 b 2 c 3 d 4 e 5 f 我爆炸后尝试计算字符串的数量 对于我的示例来说应该是 6 我还需要我的 i 从 1 而不是 0 开始 有什么想法吗 谢谢
  • JRE 11 在哪里? [复制]

    这个问题在这里已经有答案了 UPDATE to be more clear 你可以找到JRE 8 JRE 9 and JRE 10在 Oracle 官方网站上 单击每个 但在哪里JRE 11 此外 JDK 11 不包含 JRE 我期望 JR
  • 如何正确取消 Task.WhenAll 并抛出第一个异常?

    我有多个任务接受取消令牌并调用ThrowIfCancellationRequested因此 这些任务将同时运行Task WhenAll 我希望当任何任务抛出异常时取消所有任务 我使用以下方法实现了这一点Select and Continue
  • 如何使用 PHP 删除转义字符?

    我有以下文字 text vct 140 Araign e du soir espoir araign e du matin espoir du matin 我想使用 php 删除转义字符 我不想使用 stripslashes 因为它依赖于服
  • onClick 事件隐藏数据集 Chart.js V2

    我怎样才能制作一个html图例Chart js隐藏 显示dataset图表的 就像由Chart js itself 底部图例 gt Chart js 图例 右侧图例 gt HTML 我如何点击 SETOR AGILIZA 并获取datase
  • JDBC/MySQL:始终使用 UTC 保存时间戳

    我想将时间戳保存到数据库中 而不用 jdbc 驱动程序将其转换为本地时区 目前只有 MySQL 和 PostgreSQL 对我来说很重要 但如果有一个独立于数据库的解决方案 我将不胜感激 Example i want that to be
  • Spring ControllerAdvice 中未处理 404 异常

    我有一个简单的 Spring MVC 应用程序 我想在其中使用处理所有未映射的 url ControllerAdvice 这是控制器 ControllerAdvice public class ExceptionHandlerControl
  • 如何合并列表中相似的项目

    我在谷歌上没有找到任何相关的东西 所以我希望在这里找到一些帮助 我有一个 Python 列表 如下所示 hoose 200 Bananphone 10 House 200 Bonerphone 10 UniqueValue 777 我有一个
  • OS X 上的 gprof 问题:[程序] 不属于主机体系结构

    我跑步时遇到问题gprof在 OS X 上 该文件test c is include
  • 使用未解析的标识符 PFFacebookUtils

    我已经完成了这里提到的所有操作 https www parse com docs ios guide fbusers iOS 用于在 iOS 中实现 Facebook 登录 问题是我有一个编译错误 使用未解析的标识符 PFFacebookU
  • 如何从 Android Gradle 构建通过 FTP 传输文件?

    我正在尝试在 Gradle 构建后通过 FTP 传输签名的 APK 我已经添加了将签署 APK 的新构建配置 但我一直在尝试弄清楚如何调用 FTP 任务 我找到了一个官方的样本第 59 6 条 但是它抱怨它无法解析依赖项 org apach