Gradle 找不到参数的方法 compile()
Gradle Could not find method compile() for arguments
我有一个 hello world 全屏 android studio 1.5.1 应用程序,我向其中添加了一个 gradle/eclipse-mars 子项目。除了将 include ':javalib' 添加到 settings.gradle 之外,没有修改其他文件。添加 project lib dependency:
project(':app') {
dependencies {
compile project(':javalib') // line 23
}
}
到根构建构建文件并从命令行 运行ning gradle,获取:
其中:
构建文件 'D:\AndroidStudioProjects\AndroidMain\build.gradle' 行:23
出了什么问题:
评估根项目 'AndroidMain'.
时出现问题
Could not find method compile() for arguments [project ':javalib'] on org.grad
le.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler_Decorated@46
3ca82f.
adding the java plugin 到根构建文件没有帮助。
我不认为它在 wrong place。
根项目和添加的子项目都有 gradle 包装器。
任何指点将不胜感激。
谢谢
编辑:为澄清起见,根构建文件是:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.5.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
task hello << { task -> println "I'm $task.project.name" }
}
project(':app') {
dependencies {
//compile project(':javalib') // causes problems
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
应用构建文件是:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "acme.androidmain"
minSdkVersion 22
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
//compile project(':javalib') // use :javalib:jar?
//testCompile project(':javalib')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:support-v4:23.1.1'
}
编辑:本练习的全部目的是将核心 java 代码放入 android 项目中。目前核心代码是一个独立的 gradle/eclispe 项目。我在 android 项目中有一个批处理 gradle -p standaloneprojectdir/ jar 并将 jar 复制到 libs/.
我只是认为除了发布 jar 并从存储库获取它之外还有更简单的方法,因为这一切都是在我的电脑上完成的。
如果所有代码都在运行并且只做一个构建就好了:(
编辑:根据RaGe's suggestion, here is a virgin android studio project and a virgin gradle/eclipse project。没有对这些文件进行任何编辑。如果您选择接受它,您的任务是让 android 应用程序轻松访问 java 项目 类(即 new Library(); in MainActivity.onCreate() 将编译和 运行)。我不在乎 java 项目在哪里。 ide盟友,两个来源都将在 ide 中 live。
尝试this 也失败了。说:> 找不到 :virginjava 项目,但目录确实存在。
编辑:实际起作用的是 RaGe 对 virgin android project.
的拉取请求
The build script is mixing up buildscript dependencies (i.e. dependencies of the build itself; typically this means Gradle plugins) with regular dependencies (i.e. dependencies of the code to be compiled/run). The latter need to go into dependencies { ... }, not into buildscript { dependencies { ... } }. Everything but the classpath dependencies are regular dependencies.
也看看这个:Could not find method compile() for arguments Gradle。
您已经
compile project(':javalib')
在您的 :app
项目中,您不必从根 build.gradle 注入依赖项。如果你还是想从根build.gradle
开始做,正确的做法是:
configure(':app') {
dependencies {
compile project(':javalib') // causes problems - NOT ANYMORE!
}
}
virgin android studio 头是有效的。
只需将其粘贴到 build.gradle(项目:"Your prject name")
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
我有这个问题,但我自己的图书馆。正确编译的方法是:
compile project(path: ':MyLib')
我们有 2 个名为 "build.gradle" 的文件。
确保您已将 "compile code" 复制到 "app" 文件夹
内的 build.gradle 文件中
我有一个 hello world 全屏 android studio 1.5.1 应用程序,我向其中添加了一个 gradle/eclipse-mars 子项目。除了将 include ':javalib' 添加到 settings.gradle 之外,没有修改其他文件。添加 project lib dependency:
project(':app') {
dependencies {
compile project(':javalib') // line 23
}
}
到根构建构建文件并从命令行 运行ning gradle,获取:
其中: 构建文件 'D:\AndroidStudioProjects\AndroidMain\build.gradle' 行:23
出了什么问题: 评估根项目 'AndroidMain'.
时出现问题Could not find method compile() for arguments [project ':javalib'] on org.grad le.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler_Decorated@46 3ca82f.
adding the java plugin 到根构建文件没有帮助。
我不认为它在 wrong place。
根项目和添加的子项目都有 gradle 包装器。
任何指点将不胜感激。
谢谢
编辑:为澄清起见,根构建文件是:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.5.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
task hello << { task -> println "I'm $task.project.name" }
}
project(':app') {
dependencies {
//compile project(':javalib') // causes problems
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
应用构建文件是:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "acme.androidmain"
minSdkVersion 22
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
//compile project(':javalib') // use :javalib:jar?
//testCompile project(':javalib')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:support-v4:23.1.1'
}
编辑:本练习的全部目的是将核心 java 代码放入 android 项目中。目前核心代码是一个独立的 gradle/eclispe 项目。我在 android 项目中有一个批处理 gradle -p standaloneprojectdir/ jar 并将 jar 复制到 libs/.
我只是认为除了发布 jar 并从存储库获取它之外还有更简单的方法,因为这一切都是在我的电脑上完成的。
如果所有代码都在运行并且只做一个构建就好了:(
编辑:根据RaGe's suggestion, here is a virgin android studio project and a virgin gradle/eclipse project。没有对这些文件进行任何编辑。如果您选择接受它,您的任务是让 android 应用程序轻松访问 java 项目 类(即 new Library(); in MainActivity.onCreate() 将编译和 运行)。我不在乎 java 项目在哪里。 ide盟友,两个来源都将在 ide 中 live。
尝试this 也失败了。说:> 找不到 :virginjava 项目,但目录确实存在。
编辑:实际起作用的是 RaGe 对 virgin android project.
的拉取请求The build script is mixing up buildscript dependencies (i.e. dependencies of the build itself; typically this means Gradle plugins) with regular dependencies (i.e. dependencies of the code to be compiled/run). The latter need to go into dependencies { ... }, not into buildscript { dependencies { ... } }. Everything but the classpath dependencies are regular dependencies.
也看看这个:Could not find method compile() for arguments Gradle。
您已经
compile project(':javalib')
在您的 :app
项目中,您不必从根 build.gradle 注入依赖项。如果你还是想从根build.gradle
开始做,正确的做法是:
configure(':app') {
dependencies {
compile project(':javalib') // causes problems - NOT ANYMORE!
}
}
virgin android studio 头是有效的。
只需将其粘贴到 build.gradle(项目:"Your prject name")
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
我有这个问题,但我自己的图书馆。正确编译的方法是:
compile project(path: ':MyLib')
我们有 2 个名为 "build.gradle" 的文件。 确保您已将 "compile code" 复制到 "app" 文件夹
内的 build.gradle 文件中