0

我正在创建一个编译时注释处理器来在Android上生成一些代码。如何触发Gradle上的最小任务运行apt插件

要触发我使用android-apt插件从hvisser https://bitbucket.org/hvisser/android-apt/overview

目前注解处理器,在每一个变化我在我的Processor extends AbstractProcessor我必须运行一个完整的/.gradlew clean build看到的结果,那就是有点慢过程,即使是一个小样本项目。

所以我的问题是,有没有我可以用来触发注释处理器的gradlew tasks

输出从我目前./gradlew tasks是:当你编译

------------------------------------------------------------ 
All tasks runnable from root project 
------------------------------------------------------------ 

Android tasks 
------------- 
androidDependencies - Displays the Android dependencies of the project. 
signingReport - Displays the signing info for each variant. 

Build tasks 
----------- 
assemble - Assembles the outputs of this project. 
assembleAndroidTest - Assembles all the Test applications. 
assembleDebug - Assembles all Debug builds. 
assembleDebugAndroidTest - Assembles the android (on device) tests for the Debug build. 
assembleRelease - Assembles all Release builds. 
build - Assembles and tests this project. 
buildDependents - Assembles and tests this project and all projects that depend on it. 
buildNeeded - Assembles and tests this project and all projects it depends on. 
classes - Assembles classes 'main'. 
clean - Deletes the build directory. 
compileDebugAndroidTestSources 
compileDebugSources 
compileDebugUnitTestSources 
compileReleaseSources 
compileReleaseUnitTestSources 
jar - Assembles a jar archive containing the main classes. 
mockableAndroidJar - Creates a version of android.jar that's suitable for unit tests. 
testClasses - Assembles classes 'test'. 

Build Setup tasks 
----------------- 
init - Initializes a new Gradle build. [incubating] 
wrapper - Generates Gradle wrapper files. [incubating] 

Documentation tasks 
------------------- 
javadoc - Generates Javadoc API documentation for the main source code. 

Help tasks 
---------- 
components - Displays the components produced by root project 'Decorator'. [incubating] 
dependencies - Displays all dependencies declared in root project 'Decorator'. 
dependencyInsight - Displays the insight into a specific dependency in root project 'Decorator'. 
help - Displays a help message. 
projects - Displays the sub-projects of root project 'Decorator'. 
properties - Displays the properties of root project 'Decorator'. 
tasks - Displays the tasks runnable from root project 'Decorator' (some of the displayed tasks may belong to subprojects). 

Install tasks 
------------- 
installDebug - Installs the Debug build. 
installDebugAndroidTest - Installs the android (on device) tests for the Debug build. 
uninstallAll - Uninstall all applications. 
uninstallDebug - Uninstalls the Debug build. 
uninstallDebugAndroidTest - Uninstalls the android (on device) tests for the Debug build. 
uninstallRelease - Uninstalls the Release build. 

Verification tasks 
------------------ 
check - Runs all checks. 
connectedAndroidTest - Installs and runs instrumentation tests for all flavors on connected devices. 
connectedAndroidTestDebug - Installs and runs the tests for Debug build on connected devices. 
connectedCheck - Runs all device checks on currently connected devices. 
deviceAndroidTest - Installs and runs instrumentation tests using all Device Providers. 
deviceCheck - Runs all device checks using Device Providers and Test Servers. 
lint - Runs lint on all variants. 
lintDebug - Runs lint on the Debug build. 
lintRelease - Runs lint on the Release build. 
test - Runs the unit tests. 
testDebug - Run unit tests for the debug build. 
testRelease - Run unit tests for the release build. 

Other tasks 
----------- 
jarDebugClasses 
jarReleaseClasses 
+0

你能找出解决方案吗? – Abdullah

+0

@Abdullah no。我正在运行assembleDebug,但拥有更好的东西真是太棒了 – Budius

回答

0

源代码的生成情况。所以运行gradlew cleanCompileDebugSources compileDebugSources是你需要的。当您从build菜单中选择make您的项目时,这与Android Studio运行的是一样的。

如果您正在开发注释处理器作为项目的一部分,则可以使用android-apt中的processor选项,而无需打包处理器项目。这假设你有你的处理器模块作为apt project(':myprocessor')依赖项(compile也将工作)。

apt { 
    processor "my.class.name" 
} 
相关问题