我使用 Cordova 创建了一个测试项目cordova create hello com.example.hello HelloWorld ; cd hello ; cordova platform add android
.
我第一次用它构建它cordova build
,它下载 Gradle,然后我认为是一堆 Maven 文件,差不多有 200 个。这些似乎已安装到~/.gradle
但我不确定那是唯一的地方。示例输出:
$ cordova build
ANDROID_HOME=/opt/android
JAVA_HOME=/usr/lib/jvm/java-8-oracle/
Subproject Path: CordovaLib
Downloading https://services.gradle.org/distributions/gradle-3.3-all.zip
...............
Unzipping /home/ubuntu/.gradle/wrapper/dists/gradle-3.3-all/55gk2rcmfc6p2dg9u9ohc3hw9/gradle-3.3-all.zip to /home/ubuntu/.gradle/wrapper/dists/gradle-3.3-all/55gk2rcmfc6p2dg9u9ohc3hw9
Set executable permissions for: /home/ubuntu/.gradle/wrapper/dists/gradle-3.3-all/55gk2rcmfc6p2dg9u9ohc3hw9/gradle-3.3/bin/gradle
Starting a Gradle Daemon (subsequent builds will be faster)
Download https://jcenter.bintray.com/com/android/tools/build/gradle/2.2.3/gradle-2.2.3.pom
Download https://jcenter.bintray.com/com/android/tools/build/gradle-core/2.2.3/gradle-core-2.2.3.pom
Download https://jcenter.bintray.com/com/android/tools/build/builder/2.2.3/builder-2.2.3.pom
Download https://jcenter.bintray.com/com/android/tools/lint/lint/25.2.3/lint-25.2.3.pom
(skip about 180 more lines here)
Download https://repo1.maven.org/maven2/junit/junit/3.8.1/junit-3.8.1.jar
Download https://repo1.maven.org/maven2/nekohtml/xercesMinimal/1.9.6.2/xercesMinimal-1.9.6.2.jar
Download https://repo1.maven.org/maven2/nekohtml/nekohtml/1.9.6.2/nekohtml-1.9.6.2.jar
The JavaCompile.setDependencyCacheDir() method has been deprecated and is scheduled to be removed in Gradle 4.0.
Incremental java compilation is an incubating feature.
The TaskInputs.source(Object) method has been deprecated and is scheduled to be removed in Gradle 4.0. Please use TaskInputs.file(Object).skipWhenEmpty() instead.
:preBuild UP-TO-DATE
(build continues normally here)
现在,这可能很方便,但从拥有可重现的构建环境的角度来看绝对不是可取的。
如何设置 Cordova 进行完全离线构建?它会在第一个构建之后进行离线构建,还是仍然检查(例如)Gradle 更新?
我如何(以及在哪里)预安装所有内容cordova build
寻找?有没有办法让 Cordova 将所有内容作为构建的单独步骤来安装,并作为安装的单独步骤来进行构建?
我可以将内容存档吗~/.gradle/
一次,然后在进行构建之前将其解压(在同一台计算机上或不同的计算机上)并使该构建离线运行?我该如何移动~/.gradle/
到(例如)Cordova 项目的子目录?
这是在 Ubuntu 16.04 的全新安装上,从 nodesource 安装了 Node 和 npm。版本:
$ cordova --version
7.0.1
$ npm --version
3.10.10
$ node --version
v6.10.3
听起来很棘手。我想到的一种可能性是:你可以使用docker https://www.docker.com/图像与 android 和 cordova 已经安装在您的机器上,无需互联网。您会发现许多像这样的开源图像:docker-科尔多瓦 https://github.com/oren/docker-cordova当搜索例如“科尔多瓦码头图像”。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)