【发布时间】:2014-03-18 19:33:10
【问题描述】:
我有一个基于 ANT 构建工具的完整的 Android 应用程序。它与 Eclipse 一起使用,但我也必须使其与 Android Studio 一起使用。我设法使用 ADT Gradle 导出工具 导出项目,并且应用程序本身运行良好。但是,我无法让测试项目工作。
这里是 Eclipse ADT 插件生成的build.gradle。
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.8.+'
}
}
apply plugin: 'android'
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
}
android {
compileSdkVersion 19
buildToolsVersion "19.0.1"
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
// Move the tests to tests/java, tests/res, etc...
instrumentTest.setRoot('tests')
// Move the build types to build-types/<type>
// For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
// This moves them out of them default location under src/<type>/... which would
// conflict with src/ being used by the main source set.
// Adding new build types or product flavors should be accompanied
// by a similar customization.
debug.setRoot('build-types/debug')
release.setRoot('build-types/release')
}
}
我的项目结构
.
├── AndroidManifest.xml
├── ant.properties
├── build.gradle
├── build.xml
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── LICENSE
├── local.properties
├── MyApp.iml
├── proguard-project.txt
├── project.properties
├── README.md
├── res
│ ├── drawable-hdpi
│ │ └── ic_launcher.png
│ ├── drawable-ldpi
│ │ └── ic_launcher.png
│ ├── drawable-mdpi
│ │ └── ic_launcher.png
│ ├── drawable-xhdpi
│ │ └── ic_launcher.png
│ ├── layout
│ │ └── main.xml
│ └── values
│ └── strings.xml
├── src
│ └── com
│ └── example
│ └── myapp
│ └── MainActivity.java
└── tests
├── AndroidManifest.xml
├── ant.properties
├── build.xml
├── proguard-project.txt
├── project.properties
└── src
└── com
└── example
└── myapp
└── MainActivityTest.java
对我来说,Android Studio 似乎无法将tests/src/PACKAGE 检测为一个包。它被归类为临时目录。
我真的很感激任何提示。
编辑:
如果 tests/src 重命名为 tests/java 一切正常。但这不是解决方案,因为测试将停止使用 ANT 和/或 Eclipse。
【问题讨论】:
-
您的
settings.gradle应该有include ":",':tests'请检查并告诉我。将构建变体从构建变体选项卡更改为左侧面板中的测试将在 IDE 中显示为包。 -
@pyus13 它添加了
tests/tests.iml但仅此而已,仍然无法识别测试项目。 -
您是否尝试过将构建变体从“构建变体”选项卡更改为测试并运行?
-
说
Empty test suite,但我在那里进行了一项测试。
标签: android eclipse ant gradle android-studio