附录: 我的问题与这个问题不同,因为这个问题解决了每次执行项目时下载完全相同的依赖项,这是一次又一次。因此,一旦下载了依赖项,就不会再次下载相同的依赖项。
但我的问题是不同的:我需要在一个完全离线的系统中从头到尾处理一个项目。所以我永远无法在构建过程中获取在线依赖项。我需要手动下载它们并将它们托管在我的项目目录中。
我正在尝试开始使用 Eclipse 中的 Gradle 插件,并且正在遵循本指南。最初,当我完全按照教程进行操作并完全按照教程的指示进行操作时,一切都很顺利。我已经将build.gradle
粘贴在问题的末尾。
但现在有一个转折/挑战。我需要学习如何离线托管和管理离线程序的所有依赖项。
本教程中的项目正在使用此处找到的Google的Guava库。因此,我在项目根目录中创建了一个libs
目录,并将所有文件下载到其中,并将所有这些.jar
文件添加到Eclipse中的项目build path
中。
但我不知道如何从这里开始。所以这就是问题所在。我应该对我的build.gradle
文件进行哪些更改,以及我应该在我的项目中执行哪些其他操作,以便我的项目可以从其自己的文件夹中选取这些.jar
依赖项,并在脱机系统上运行良好。
build.gradle 从链接的教程复制和粘贴 - 选择"在线"依赖项。问题是如何在离线项目中离线托管和使用这些依赖项:
apply plugin: 'java'
apply plugin: 'application'
repositories {
jcenter()
}
dependencies {
compile 'com.google.guava:guava:20.0' // Google Guava dependency
testCompile 'junit:junit:4.12' // JUnit dependency for testing
}
mainClassName = 'com.boraji.tutorial.MainApp' // Main class with main method
Gradle 在避免重新下载工件方面做得很好,但你可以通过 --offline 到 grade,以防止在构建期间访问网络。如果它需要来自网络的东西,而不是尝试获取它,你的构建将失败。
请查看此问题 如何将 gradle 配置为"离线"工作(使用缓存的依赖项)。 回答信用@iagreen