我正在尝试构建一个带有UI的Android Studio插件,以向build.gradle文件添加依赖项。我们如何以编程方式将一行依赖项添加到我的插件中的 build.gradle 文件中?
请尝试以下步骤。确保您已将 gradle 依赖项 ( <depends>org.jetbrains.plugins.gradle</depends>
( 添加到插件项目的plugin.xml
中。
-
创建一个表示不想修改
build.gradle
文件的VirtualFile
。VirtualFile buildFile = LocalFileSystem.getInstance().findFileByPath("absolute path to build.gradle");
-
为该文件创建
GradleBuildModel
。GradleBuildModel gradleBuildModel = GradleBuildModel.parseBuildFile(buildFile, project);
-
从
GradleBuildModel
获取DependenciesModel
DependenciesModel dependenciesModel = buildModel.dependencies();
-
添加依赖项。
dependenciesModel.addArtifact(COMPILE, "com.squareup.picasso:picasso:2.5.2"); //import static com.android.tools.idea.gradle.dsl.model.dependencies.CommonConfigurationNames.COMPILE;
-
最后,应用更改。
ApplicationManager.getApplication().runWriteAction(() -> { CommandProcessor.getInstance().executeCommand(project, () -> { gradleBuildModel.applyChanges(); }, null, null); });