A Gradle plug-in that enables generation of Eclipse project files (.project and .classpath) to enable use of the Eclipse IDE for Android projects.
This generator works with the new Android build system.
Based on this stack overflow by Johannes Brodwall.
This plug-in hooks into the Gradle eclipse plugin to make it work for Android projects, by doing the following:
- Adds the following Android source paths:
src/main/java
build/generated/source/r/debug
build/generated/not_namespaced_r_class_sources/debug/r
build/generated/source/buildConfig/debug
build/generated/source/aidl/debug
- For any dependency packaged as an aar (Android Archive), the aar is extracted into
build/exploded-aars
- each aar-packaged jar is added to the
.classpath
- each aar-packaged jar is added to the
- Adds the Android SDK to the
.classpath
Add the following to your build.gradle:
apply plugin: 'com.greensopinion.gradle-android-eclipse'
apply plugin: 'eclipse'
buildscript {
dependencies {
classpath fileTree(dir: 'libs', includes: ['gradle-android-eclipse-1.1.1.jar'])
}
}
// https://github.com/greensopinion/gradle-android-eclipse/issues/9
configurations {
eclipseConfig.extendsFrom implementation
eclipseTestConfig.extendsFrom testImplementation
}
eclipse {
classpath {
plusConfigurations += [
configurations.compile,
configurations.testCompile,
configurations.eclipseConfig,
configurations.eclipseTestConfig,
]
downloadSources = true
}
}
See build.gradle for a complete working example.
Then from the command-line run:
$ gradle eclipse
When done, a .classpath
and .project
file should be in the current folder.
To open this project in Eclipse, first run the following:
$ gradle eclipse
Copyright 2017 David Green
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.