Java Code Examples for com.android.build.gradle.api.AndroidSourceSet
The following examples show how to use
com.android.build.gradle.api.AndroidSourceSet. These examples are extracted from open source projects.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: javaide Source File: VariantManager.java License: GNU General Public License v3.0 | 6 votes |
private static void createCompoundSourceSets( @NonNull List<? extends ProductFlavor> productFlavorList, GradleVariantConfiguration variantConfig, NamedDomainObjectContainer<AndroidSourceSet> sourceSetsContainer) { if (!productFlavorList.isEmpty() && !variantConfig.getType().isSingleBuildType()) { DefaultAndroidSourceSet variantSourceSet = (DefaultAndroidSourceSet) sourceSetsContainer.maybeCreate( computeSourceSetName( variantConfig.getFullName(), variantConfig.getType())); variantConfig.setVariantSourceProvider(variantSourceSet); } if (productFlavorList.size() > 1) { DefaultAndroidSourceSet multiFlavorSourceSet = (DefaultAndroidSourceSet) sourceSetsContainer.maybeCreate( computeSourceSetName( variantConfig.getFlavorName(), variantConfig.getType())); variantConfig.setMultiFlavorSourceProvider(multiFlavorSourceSet); } }
Example 2
Source Project: javaide Source File: AndroidConfigAdaptor.java License: GNU General Public License v3.0 | 6 votes |
private void applyProjectSourceSet() { for (FunctionalSourceSet source : getSources()) { String name = source.getName(); AndroidSourceSet androidSource = name.equals(BuilderConstants.MAIN) ? sourceSetsContainer.maybeCreate(getDefaultConfig().getName()) : sourceSetsContainer.maybeCreate(name); convertSourceFile(androidSource.getManifest(), source, "manifest"); convertSourceSet(androidSource.getResources(), source, "resource"); convertSourceSet(androidSource.getJava(), source, "java"); convertSourceSet(androidSource.getRes(), source, "res"); convertSourceSet(androidSource.getAssets(), source, "assets"); convertSourceSet(androidSource.getAidl(), source, "aidl"); convertSourceSet(androidSource.getJni(), source, "jni"); convertSourceSet(androidSource.getJniLibs(), source, "jniLibs"); } }
Example 3
Source Project: javaide Source File: ProcessJavaResConfigAction.java License: GNU General Public License v3.0 | 5 votes |
@Override public void execute(@NonNull Sync processResources) { scope.getVariantData().processJavaResourcesTask = processResources; // set the input processResources.from(((AndroidSourceSet) scope.getVariantConfiguration().getDefaultSourceSet()).getResources().getSourceFiles()); processResources.from(((AndroidSourceSet) scope.getVariantConfiguration().getBuildTypeSourceSet()).getResources().getSourceFiles()); if (scope.getVariantConfiguration().hasFlavors()) { for (SourceProvider flavorSourceSet : scope.getVariantConfiguration().getFlavorSourceProviders()) { processResources.from(((AndroidSourceSet) flavorSourceSet).getResources().getSourceFiles()); } } processResources.setDestinationDir(new File(scope.getSourceFoldersJavaResDestinationDir(), "src")); }
Example 4
Source Project: javaide Source File: SourceSetsTask.java License: GNU General Public License v3.0 | 5 votes |
@Override protected void generate(Project project) throws IOException { if (config != null) { for (AndroidSourceSet sourceSet : config.getSourceSets()) { mRenderer.getBuilder().subheading(sourceSet.getName()); renderKeyValue("Compile configuration: ", sourceSet.getCompileConfigurationName()); renderKeyValue("build.gradle name: ", "android.sourceSets." + sourceSet.getName()); renderDirectorySet("Java sources", sourceSet.getJava(), project); renderKeyValue( "Manifest file: ", project.getRootProject().relativePath( sourceSet.getManifest().getSrcFile())); renderDirectorySet("Android resources", sourceSet.getRes(), project); renderDirectorySet("Assets", sourceSet.getAssets(), project); renderDirectorySet("AIDL sources", sourceSet.getAidl(), project); renderDirectorySet("JNI sources", sourceSet.getJni(), project); renderDirectorySet("JNI libraries", sourceSet.getJniLibs(), project); renderDirectorySet("Java-style resources", sourceSet.getResources(), project); mRenderer.getTextOutput().println(); } } mRenderer.complete(); }
Example 5
Source Project: javaide Source File: BaseVariantData.java License: GNU General Public License v3.0 | 5 votes |
/** * Computes the Java sources to use for compilation. This Object[] contains * {@link org.gradle.api.file.FileCollection} and {@link File} instances */ @NonNull public Object[] getJavaSources() { if (javaSources == null) { // Build the list of source folders. List<Object> sourceList = Lists.newArrayList(); // First the actual source folders. List<SourceProvider> providers = variantConfiguration.getSortedSourceProviders(); for (SourceProvider provider : providers) { sourceList.add(((AndroidSourceSet) provider).getJava().getSourceFiles()); } // then all the generated src folders. if (getScope().getGenerateRClassTask() != null) { sourceList.add(getScope().getRClassSourceOutputDir()); } // for the other, there's no duplicate so no issue. if (getScope().getGenerateBuildConfigTask() != null) { sourceList.add(scope.getBuildConfigSourceOutputDir()); } if (getScope().getAidlCompileTask() != null) { sourceList.add(scope.getAidlSourceOutputDir()); } javaSources = sourceList.toArray(); } return javaSources; }
Example 6
Source Project: javaide Source File: DefaultAndroidSourceSet.java License: GNU General Public License v3.0 | 5 votes |
@Override @NonNull public AndroidSourceSet setRoot(String path) { javaSource.setSrcDirs(Collections.singletonList(path + "/java")); javaResources.setSrcDirs(Collections.singletonList(path + "/resources")); res.setSrcDirs(Collections.singletonList(path + "/" + SdkConstants.FD_RES)); assets.setSrcDirs(Collections.singletonList(path + "/" + SdkConstants.FD_ASSETS)); manifest.srcFile(path + "/" + SdkConstants.FN_ANDROID_MANIFEST_XML); aidl.setSrcDirs(Collections.singletonList(path + "/aidl")); jni.setSrcDirs(Collections.singletonList(path + "/jni")); jniLibs.setSrcDirs(Collections.singletonList(path + "/jniLibs")); return this; }
Example 7
Source Project: javaide Source File: AndroidConfigAdaptor.java License: GNU General Public License v3.0 | 5 votes |
public AndroidConfigAdaptor( AndroidConfig model, NamedDomainObjectContainer<AndroidSourceSet> sourceSetsContainer) { this.model = model; this.sourceSetsContainer = sourceSetsContainer; applyProjectSourceSet(); }
Example 8
Source Project: javaide Source File: AndroidConfigAdaptor.java License: GNU General Public License v3.0 | 5 votes |
@Nullable private static AndroidSourceSet findAndroidSourceSet( VariantManager variantManager, String name) { BuildTypeData buildTypeData = variantManager.getBuildTypes().get(name); if (buildTypeData != null) { return buildTypeData.getSourceSet(); } ProductFlavorData productFlavorData = variantManager.getProductFlavors().get(name); if (productFlavorData != null) { return productFlavorData.getSourceSet(); } return null; }
Example 9
Source Project: firebase-android-sdk Source File: FirebaseLibraryPlugin.java License: Apache License 2.0 | 4 votes |
private static void setupApiInformationAnalysis(Project project, LibraryExtension android) { File metalavaOutputJarFile = new File(project.getRootProject().getBuildDir(), "metalava.jar"); AndroidSourceSet mainSourceSet = android.getSourceSets().getByName("main"); File outputFile = project .getRootProject() .file( Paths.get( project.getRootProject().getBuildDir().getPath(), "apiinfo", project.getPath().substring(1).replace(":", "_"))); File outputApiFile = new File(outputFile.getAbsolutePath() + "_api.txt"); project .getTasks() .register( "getMetalavaJar", GetMetalavaJarTask.class, task -> { task.setOutputFile(metalavaOutputJarFile); }); File apiTxt = project.file("api.txt").exists() ? project.file("api.txt") : project.file(project.getRootDir() + "/empty-api.txt"); TaskProvider<ApiInformationTask> apiInfo = project .getTasks() .register( "apiInformation", ApiInformationTask.class, task -> { task.setApiTxt(apiTxt); task.setMetalavaJarPath(metalavaOutputJarFile.getAbsolutePath()); task.setSourceSet(mainSourceSet); task.setOutputFile(outputFile); task.setBaselineFile(project.file("baseline.txt")); task.setOutputApiFile(outputApiFile); if (project.hasProperty("updateBaseline")) { task.setUpdateBaseline(true); } else { task.setUpdateBaseline(false); } task.dependsOn("getMetalavaJar"); }); TaskProvider<GenerateApiTxtFileTask> generateApiTxt = project .getTasks() .register( "generateApiTxtFile", GenerateApiTxtFileTask.class, task -> { task.setApiTxt(project.file("api.txt")); task.setMetalavaJarPath(metalavaOutputJarFile.getAbsolutePath()); task.setSourceSet(mainSourceSet); task.setBaselineFile(project.file("baseline.txt")); task.setUpdateBaseline(project.hasProperty("updateBaseline")); task.dependsOn("getMetalavaJar"); }); TaskProvider<GenerateStubsTask> docStubs = project .getTasks() .register( "docStubs", GenerateStubsTask.class, task -> { task.setMetalavaJarPath(metalavaOutputJarFile.getAbsolutePath()); task.setOutputDir(new File(project.getBuildDir(), "doc-stubs")); task.dependsOn("getMetalavaJar"); task.setSourceSet(mainSourceSet); }); project.getTasks().getByName("check").dependsOn(docStubs); android .getLibraryVariants() .all( v -> { if (v.getName().equals("release")) { FileCollection jars = v.getCompileConfiguration() .getIncoming() .artifactView( config -> config.attributes( container -> container.attribute( Attribute.of("artifactType", String.class), "jar"))) .getArtifacts() .getArtifactFiles(); apiInfo.configure(t -> t.setClassPath(jars)); generateApiTxt.configure(t -> t.setClassPath(jars)); docStubs.configure(t -> t.setClassPath(jars)); } }); }
Example 10
Source Project: javaide Source File: AndroidSourceSetFactory.java License: GNU General Public License v3.0 | 4 votes |
@Override public AndroidSourceSet create(String name) { return instantiator.newInstance(DefaultAndroidSourceSet.class, name, project, isLibrary); }
Example 11
Source Project: javaide Source File: DefaultAndroidSourceSet.java License: GNU General Public License v3.0 | 4 votes |
@Override @NonNull public AndroidSourceSet manifest(Closure configureClosure) { ConfigureUtil.configure(configureClosure, getManifest()); return this; }
Example 12
Source Project: javaide Source File: DefaultAndroidSourceSet.java License: GNU General Public License v3.0 | 4 votes |
@Override @NonNull public AndroidSourceSet res(Closure configureClosure) { ConfigureUtil.configure(configureClosure, getRes()); return this; }
Example 13
Source Project: javaide Source File: DefaultAndroidSourceSet.java License: GNU General Public License v3.0 | 4 votes |
@Override @NonNull public AndroidSourceSet assets(Closure configureClosure) { ConfigureUtil.configure(configureClosure, getAssets()); return this; }
Example 14
Source Project: javaide Source File: DefaultAndroidSourceSet.java License: GNU General Public License v3.0 | 4 votes |
@Override @NonNull public AndroidSourceSet aidl(Closure configureClosure) { ConfigureUtil.configure(configureClosure, getAidl()); return this; }
Example 15
Source Project: javaide Source File: DefaultAndroidSourceSet.java License: GNU General Public License v3.0 | 4 votes |
@Override @NonNull public AndroidSourceSet jni(Closure configureClosure) { ConfigureUtil.configure(configureClosure, getJni()); return this; }
Example 16
Source Project: javaide Source File: DefaultAndroidSourceSet.java License: GNU General Public License v3.0 | 4 votes |
@Override @NonNull public AndroidSourceSet jniLibs(Closure configureClosure) { ConfigureUtil.configure(configureClosure, getJniLibs()); return this; }
Example 17
Source Project: javaide Source File: DefaultAndroidSourceSet.java License: GNU General Public License v3.0 | 4 votes |
@Override @NonNull public AndroidSourceSet java(Closure configureClosure) { ConfigureUtil.configure(configureClosure, getJava()); return this; }
Example 18
Source Project: javaide Source File: DefaultAndroidSourceSet.java License: GNU General Public License v3.0 | 4 votes |
@Override @NonNull public AndroidSourceSet resources(Closure configureClosure) { ConfigureUtil.configure(configureClosure, getResources()); return this; }
Example 19
Source Project: javaide Source File: AndroidConfigHelper.java License: GNU General Public License v3.0 | 4 votes |
public static NamedDomainObjectContainer<AndroidSourceSet> createSourceSetsContainer( @NonNull final Project project, @NonNull Instantiator instantiator, final boolean isLibrary) { NamedDomainObjectContainer<AndroidSourceSet> sourceSetsContainer = project.container( AndroidSourceSet.class, new AndroidSourceSetFactory(instantiator, project, isLibrary)); sourceSetsContainer.whenObjectAdded(new Action<AndroidSourceSet>() { @Override public void execute(AndroidSourceSet sourceSet) { ConfigurationContainer configurations = project.getConfigurations(); createConfiguration( configurations, sourceSet.getCompileConfigurationName(), "Classpath for compiling the ${sourceSet.name} sources."); String packageConfigDescription; if (isLibrary) { packageConfigDescription = "Classpath only used when publishing '${sourceSet.name}'."; } else { packageConfigDescription = "Classpath packaged with the compiled '${sourceSet.name}' classes."; } createConfiguration( configurations, sourceSet.getPackageConfigurationName(), packageConfigDescription); createConfiguration( configurations, sourceSet.getProvidedConfigurationName(), "Classpath for only compiling the ${sourceSet.name} sources."); createConfiguration( configurations, sourceSet.getWearAppConfigurationName(), "Link to a wear app to embed for object '${sourceSet.name}'."); sourceSet.setRoot(String.format("src/%s", sourceSet.getName())); } }); return sourceSetsContainer; }
Example 20
Source Project: javaide Source File: BaseExtension.java License: GNU General Public License v3.0 | 4 votes |
BaseExtension( @NonNull final ProjectInternal project, @NonNull Instantiator instantiator, @NonNull AndroidBuilder androidBuilder, @NonNull SdkHandler sdkHandler, @NonNull NamedDomainObjectContainer<BuildType> buildTypes, @NonNull NamedDomainObjectContainer<ProductFlavor> productFlavors, @NonNull NamedDomainObjectContainer<SigningConfig> signingConfigs, @NonNull ExtraModelInfo extraModelInfo, final boolean isLibrary) { this.androidBuilder = androidBuilder; this.sdkHandler = sdkHandler; this.buildTypes = buildTypes; //noinspection unchecked this.productFlavors = (NamedDomainObjectContainer) productFlavors; this.signingConfigs = signingConfigs; this.extraModelInfo = extraModelInfo; this.project = project; logger = Logging.getLogger(this.getClass()); defaultConfig = instantiator.newInstance(ProductFlavor.class, BuilderConstants.MAIN, project, instantiator, project.getLogger()); aaptOptions = instantiator.newInstance(AaptOptions.class); dexOptions = instantiator.newInstance(DexOptions.class); lintOptions = instantiator.newInstance(LintOptions.class); compileOptions = instantiator.newInstance(CompileOptions.class); packagingOptions = instantiator.newInstance(PackagingOptions.class); preprocessingOptions = instantiator.newInstance(PreprocessingOptions.class); splits = instantiator.newInstance(Splits.class, instantiator); sourceSetsContainer = project.container(AndroidSourceSet.class, new AndroidSourceSetFactory(instantiator, project, isLibrary)); sourceSetsContainer.whenObjectAdded(new Action<AndroidSourceSet>() { @Override public void execute(AndroidSourceSet sourceSet) { ConfigurationContainer configurations = project.getConfigurations(); createConfiguration( configurations, sourceSet.getCompileConfigurationName(), "Classpath for compiling the " + sourceSet.getName() + " sources."); String packageConfigDescription; if (isLibrary) { packageConfigDescription = "Classpath only used when publishing '" + sourceSet.getName() + "'."; } else { packageConfigDescription = "Classpath packaged with the compiled '" + sourceSet.getName() + "' classes."; } createConfiguration( configurations, sourceSet.getPackageConfigurationName(), packageConfigDescription); createConfiguration( configurations, sourceSet.getProvidedConfigurationName(), "Classpath for only compiling the " + sourceSet.getName() + " sources."); createConfiguration( configurations, sourceSet.getWearAppConfigurationName(), "Link to a wear app to embed for object '" + sourceSet.getName() + "'."); sourceSet.setRoot(String.format("src/%s", sourceSet.getName())); } }); sourceSetsContainer.create(defaultConfig.getName()); }
Example 21
Source Project: javaide Source File: BaseExtension.java License: GNU General Public License v3.0 | 4 votes |
/** * Configures the source sets. Note that the Android plugin uses its own implementation of * source sets, {@link AndroidSourceSet}. */ public void sourceSets(Action<NamedDomainObjectContainer<AndroidSourceSet>> action) { checkWritability(); action.execute(sourceSetsContainer); }
Example 22
Source Project: javaide Source File: BaseExtension.java License: GNU General Public License v3.0 | 4 votes |
/** * All source sets. Note that the Android plugin uses its own implementation of * source sets, {@link AndroidSourceSet}. */ @Override public NamedDomainObjectContainer<AndroidSourceSet> getSourceSets() { return sourceSetsContainer; }
Example 23
Source Project: javaide Source File: AndroidConfigAdaptor.java License: GNU General Public License v3.0 | 4 votes |
@Override public NamedDomainObjectContainer<AndroidSourceSet> getSourceSets() { return sourceSetsContainer; }
Example 24
Source Project: javaide Source File: AndroidConfig.java License: GNU General Public License v3.0 | 2 votes |
/** * Source sets for all variants */ NamedDomainObjectContainer<AndroidSourceSet> getSourceSets();
Example 25
Source Project: firebase-android-sdk Source File: GenerateStubsTask.java License: Apache License 2.0 | votes |
public abstract AndroidSourceSet getSourceSet();
Example 26
Source Project: firebase-android-sdk Source File: GenerateStubsTask.java License: Apache License 2.0 | votes |
public abstract void setSourceSet(AndroidSourceSet sourceSet);
Example 27
Source Project: firebase-android-sdk Source File: ApiInformationTask.java License: Apache License 2.0 | votes |
abstract AndroidSourceSet getSourceSet();
Example 28
Source Project: firebase-android-sdk Source File: ApiInformationTask.java License: Apache License 2.0 | votes |
public abstract void setSourceSet(AndroidSourceSet value);
Example 29
Source Project: firebase-android-sdk Source File: GenerateApiTxtFileTask.java License: Apache License 2.0 | votes |
abstract AndroidSourceSet getSourceSet();
Example 30
Source Project: firebase-android-sdk Source File: GenerateApiTxtFileTask.java License: Apache License 2.0 | votes |
public abstract void setSourceSet(AndroidSourceSet value);