我正在尝试让我现有的Android项目与渐变和智能J 12一起工作。以前,我曾让它与maven一起工作,但这似乎不像gradle那样灵活,而且据我所知,我需要的子文件夹更少。
我的Android项目分为干净的java库(:core)和实际的应用程序(:Android)。这两个项目都在我的主项目文件夹中。
~-+MainProject
|--+core
| L--build.gradle
|--+android
| L--build.gradle
|--build.gradle
L--settings.gradle
我认为,用这个实现gradle工作的理想解决方案是将(:core)和(:android)项目视为嵌套项目,这意味着我可以简单地在MainProject源文件夹中使用cmd来启动gradle任务。
然而,我遇到了不同的问题:
这是*。梯度配置
主项目: -- 设置.gradle
include ':core', ':android'
--内置梯度
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.6.+'
}
}
subprojects {
repositories {
mavenLocal()
maven { url "http://repo.maven.apache.org/maven2" }
}
}
:核心 -- 构建渐变
apply plugin: 'java'
dependencies {
testCompile 'junit:junit:4.11'
testCompile 'org.mockito:mockito-core:1.9.5'
}
:Android
apply plugin: 'android'
repositories {
mavenCentral()
}
dependencies {
compile project(":core")
compile 'com.google.android:android:4.1.1.4'
instrumentTestCompile 'junit:junit:4.11'
instrumentTestCompile 'org.mockito:mockito-core:1.9.5'
instrumentTestCompile 'com.google.dexmaker:dexmaker:1.0'
instrumentTestCompile 'com.google.dexmaker:dexmaker-mockito:1.0'
instrumentTestCompile 'com.jayway.android.robotium:robotium-solo:3.6'
}
/* ... androidSettings
我希望有人能帮我
MFG Dornathal
好吧,所以你的想法是对的,但是你还需要做一些改变。
您的根< code>build.gradle文件应该如下所示:
subprojects {
repositories {
mavenCentral()
}
}
mavenLocal()
。大多数人不这样做,并且您的项目中没有任何内容表明您需要一个。mavenCentral()
可用于替换您正在使用的maven URL。build.gradle
。对于核心项目,你的设置
.gradle 和你的构建.gradle
都很好。
然而,您的build.gradle
对于android项目,需要一些更改:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.6.+'
}
}
apply plugin: 'android'
dependencies {
compile project(":core")
instrumentTestCompile 'com.jayway.android.robotium:robotium-solo:3.6'
}
编译“Android:4.1.1.4”
。junit
。它由 SDK 提供,因此我们将使用它。需要注意的一点是,开发工具包仅包含 J 单元 3。模拟
和dexmaker,
除非我们实际上将其用于Android测试。如果它仅用于java库上的测试,我们在这里不需要它。回答您的问题:
最后一点。Intellij 12不能处理分级多项目构建。你需要切换到Android Studio或Intellij 13。
我正在尝试连接到本地MongoDB实例(版本3.2)。我已经在构建中指定了依赖项。格拉德尔是这样的: 依赖项{编译'org.mongodb: mongoDB驱动程序: 3.3.0'} 我有一个简单的App.java文件,其中包含以下代码(见下文)。构建/编译Java步骤都运行良好,没有错误。但是当我运行代码时,我得到:“线程”主要“java.lang.noClassDefFoundEror中的异常
我试图用我的gradle项目运行junit测试,但不管是什么测试,它们都会抛出以下堆栈跟踪 我已经看到了一些建议的解决方案,但似乎没有一个奏效。当我在ant中运行它们时,我的测试运行良好。我已经确保xerces使用的是最新版本,我还添加了建议的版本 对于JVM,但似乎什么都不起作用。 任何建议都将不胜感激。我可以根据要求提供更多信息。 **更新** 做了以下更改- 但现在的结果如图所示 **更新2
错误:找不到方法com。Android建筑格拉德尔。api。BaseVariant。getOutputs()Ljava/util/List;'。此意外错误的可能原因包括: Gradle的依赖项缓存可能已损坏(这有时会在网络连接超时后发生。)重新下载依赖项和同步项目(需要网络) Gradle构建进程(守护进程)的状态可能已损坏。停止所有Gradle守护进程可以解决此问题。停止Gradle生成过程(需
我正试图用quarkus运行简单的“入门”型gradle项目,每次我的单元测试都会因为这个错误而失败 按照这里的指示https://quarkus.io/guides/gradle-tooling对正在发生的事情有什么建议或想法吗?
谷歌刚刚开源了它的构建工具Bazel。这个工具和Gradle有什么不同?它能做什么是Gradle做不到的,它做什么更好,Gradle做什么更好?
我通过VS Code创建了一个新的flutter项目。但是我不知道为什么我在运行时会有这个错误 失败:构建失败,有一个异常。 > 错误:配置根项目“android”时出现问题。 无法解析配置“:classpath”的所有项目。找不到com。Android工具。建造:梯度:3.6。2.在以下位置搜索: https://dl.google.com/dl/android/maven2/com/andro