I will ask in a bit different way: will there be an IDE support for
artifact types in 1.0?
On Wednesday, 2 July 2014 03:35:12 UTC+3, Roman Mazur wrote:
>
> Doesn't a new IDE model in 0.12 support this?
>
> On Thursday, 19 December 2013 13:03:19 UTC-8, Jürgen Cruz wrote:
>>
>> I read this on the release notes for Gradle plugin 0.7.0:
>>
>> New API to add extra artifacts on variants. This will let you register
>> Java or (later) Android artifacts, for instance for alternative test
>> artifacts (e.g. robolectric)
>> See 'artifactApi' sample for the API (sample is not meant to be used
>> directly, it's for testing and to demonstrate the API).
>>
>> I've seen the example, but I still have my doubts about how this works.
>>
>> Will I be able to specify if the source directory is a test directory? or
>> will it be recognized as source?
>>
>> From what I see in the code, they are just registering a provider, but
>> the provider interface is really confusing:
>>
>> File getManifestFile() {
>> return new File(name)
>> }
>>
>> Collection<File> getJavaDirectories() {
>> return Collections.emptyList()
>> }
>>
>> Collection<File> getResourcesDirectories() {
>> return Collections.emptyList()
>> }
>>
>> Collection<File> getAidlDirectories() {
>> return Collections.emptyList()
>> }
>>
>> Collection<File> getRenderscriptDirectories() {
>> return Collections.emptyList()
>> }
>>
>> Collection<File> getJniDirectories() {
>> return Collections.emptyList()
>> }
>>
>> Collection<File> getResDirectories() {
>> return Collections.emptyList()
>> }
>>
>> Collection<File> getAssetsDirectories() {
>> return Collections.emptyList()
>> }
>>
>> Why do I need to specify an android manifest file? will it override the
>> default flavor or build type manifest?
>>
>> If I add a source directory through getJavaDirectories(), will those
>> source be treated as part of the app? i.e. production code? can I specify
>> that the sources are for test only? Also, since this SourceProviders are
>> being added to the variant or build type directly, does that mean that it
>> will affect the build itself or are this SourceProviders only for Android
>> Studio to pick up and show them?
>>
>> Also, how can one add a dependency to this?
>>
>> I'll try to explain what I need to do, and see how it goes from here:
>>
>> Currently I support a plugin that basically creates a Test task for each
>> variant. this task will run JUnit tests. As all Test tasks, it needs the
>> .class files of the tests to run. So I need to compile the tests first. So
>> I add a Java SourceSet (which for some reason it has already a task
>> assigned to it when you create it that compiles the source set) for each
>> variant as well and specify the source dir for the tests (.java files) and
>> the output dir of this task is the input dir for the test task.
>>
>> Finally, I create some Configurations (similar to compileDebug, or
>> compileFreeDebug) that can be used to add dependencies (like robolectric)
>> and I add these configurations to the classpath of the sourceSet so it can
>> compile correctly.
>>
>> Now, Obviously since these tasks and source sets are Java and not part of
>> the android model, then AS will not pick either the source directories, nor
>> the dependencies.
>>
>> My question is: How is this new API going to help in making AS recognize
>> these source sets and its dependencies without injecting them in the
>> production code?
>>
>> Thank you very much.
>>
>
--
You received this message because you are subscribed to the Google Groups
"adt-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.