diff --git a/DexKnifePlugin/.gitignore b/DexKnifePlugin/.gitignore index d3ce82a..7cb5c9c 100644 --- a/DexKnifePlugin/.gitignore +++ b/DexKnifePlugin/.gitignore @@ -6,3 +6,15 @@ .DS_Store /build /captures +local.properties +.idea/compiler.xml +.idea/copyright/ +.idea/encodings.xml +.idea/gradle.xml +.idea/misc.xml +.idea/qaplug_profiles.xml +gradle/ +gradlew +gradlew.bat +repo/com/ceabie/ +repo/com/library/ diff --git a/DexKnifePlugin/app/build.gradle b/DexKnifePlugin/app/build.gradle index 0da9a3f..6a761f9 100644 --- a/DexKnifePlugin/app/build.gradle +++ b/DexKnifePlugin/app/build.gradle @@ -1,5 +1,5 @@ apply plugin: 'com.android.application' -apply plugin: 'com.ceabie.dexnkife' +apply plugin: 'dexknifePlus' android { compileSdkVersion Integer.parseInt(project.COMPILE_SDK_VER) @@ -14,6 +14,16 @@ android { multiDexEnabled true } + productFlavors{ + dev{ + + } + + mock{ + + } + } + buildTypes { release { minifyEnabled false @@ -31,6 +41,24 @@ android { } } +dexKnife{ + //必选参数 + enabled true //if false,禁用分包插件 + //可选参数 + //1.如果没有可选参数,将根据enabled决定是否分包。 + //2.如果有可选参数,需满足必选参数和可选参数的条件才允许分包 + productFlavor 'mock' + buildType 'debug' + + /* + *eg:当前productFlavors = dev,buildType = debug, + *参数组合1:enabled = true,productFlavor = dev,buildType = debug 分包 + *参数组合2:enabled = true,productFlavor = mock,buildType = debug 不分包 + *参数组合1:enabled = true,buildType = debug 所有buildType = debug分包 + *参数组合1:enabled = true,productFlavor = dev 所有productFlavor = dev分包 + * */ +} + dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') compile "com.android.support:appcompat-v7:${SUPPORT_VERSION}" diff --git a/DexKnifePlugin/build.gradle b/DexKnifePlugin/build.gradle index 71c3d89..d88678c 100644 --- a/DexKnifePlugin/build.gradle +++ b/DexKnifePlugin/build.gradle @@ -1,13 +1,12 @@ buildscript { repositories { - maven { url uri('./repo') } jcenter() mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:2.2.0' - classpath 'com.ceabie.dextools:gradle-dexknife-plugin:2.0.2' + classpath 'com.library.tangxiaolv:dexknife-plus:1.0.1' } } diff --git a/DexKnifePlugin/gradle-dexknife-plugin/.gitignore b/DexKnifePlugin/dexknife-plus/.gitignore similarity index 100% rename from DexKnifePlugin/gradle-dexknife-plugin/.gitignore rename to DexKnifePlugin/dexknife-plus/.gitignore diff --git a/DexKnifePlugin/dexknife-plus/build.gradle b/DexKnifePlugin/dexknife-plus/build.gradle new file mode 100644 index 0000000..3aafa1b --- /dev/null +++ b/DexKnifePlugin/dexknife-plus/build.gradle @@ -0,0 +1,74 @@ +buildscript { + repositories { + mavenLocal() + jcenter() + } + + dependencies { + classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.4' + classpath 'com.github.dcendents:android-maven-gradle-plugin:1.4.1' + } +} + +apply plugin: 'groovy' +apply plugin: 'com.jfrog.bintray' + +configurations { + provided { + dependencies.all { dep -> + configurations.default.exclude group: dep.group, module: dep.name + } + } + compile.extendsFrom provided +} + +dependencies { + compile gradleApi() + compile localGroovy() + provided 'com.android.tools.build:builder:2.1.3' + provided 'com.android.tools.build:gradle-core:2.1.3' +} + +tasks.withType(Javadoc) { +// enabled = false //禁用生成javadoc的任务 + options.encoding = "UTF-8" +} + +ext { + bintrayRepo = 'maven' + bintrayName = "$LIBRARY_NAME" //maven 仓库中的包名 + + publishedGroupId = "$GROUP_ID" + libraryName = "$LIBRARY_NAME" + artifact = "$LIBRARY_NAME"//必须跟Model名一样 + + libraryDescription = 'android multidex plugin' + + siteUrl = 'https://github.com/TangXiaoLv/Android-Easy-MultiDex' + gitUrl = 'https://github.com/TangXiaoLv/Android-Easy-MultiDex.git' + + libraryVersion = "$PUBLIC_VERSION" + + developerId = 'tangxiaolv' + developerName = 'XiaoLv Tang' + developerEmail = 'imbatang@gmail.com' + + licenseName = 'The Apache Software License, Version 2.0' + licenseUrl = 'http://www.apache.org/licenses/LICENSE-2.0.txt' + allLicenses = ["Apache-2.0"] +} + +// Place it at the end of the file +apply from: 'https://raw.githubusercontent.com/nuuneoi/JCenter/master/installv1.gradle' +apply from: 'https://raw.githubusercontent.com/nuuneoi/JCenter/master/bintrayv1.gradle' + +uploadArchives { + repositories { + mavenDeployer { + repository(url: uri('../repo')) + pom.groupId = "$GROUP_ID" + pom.artifactId = "$LIBRARY_NAME" + pom.version = "$LOCAL_VERSION" + } + } +} diff --git a/DexKnifePlugin/dexknife-plus/gradle.properties b/DexKnifePlugin/dexknife-plus/gradle.properties new file mode 100644 index 0000000..184c457 --- /dev/null +++ b/DexKnifePlugin/dexknife-plus/gradle.properties @@ -0,0 +1,6 @@ +#Gradle:groupId:libraryName:publicVersion +LOCAL_VERSION=0.0.5 +PUBLIC_VERSION=1.0.1 +GROUP_ID=com.library.tangxiaolv +#Modelһ +LIBRARY_NAME=dexknife-plus diff --git a/DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/ClassFileTreeElement.java b/DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/ClassFileTreeElement.java similarity index 100% rename from DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/ClassFileTreeElement.java rename to DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/ClassFileTreeElement.java diff --git a/DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/DexKnifeConfig.java b/DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/DexKnifeConfig.java similarity index 100% rename from DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/DexKnifeConfig.java rename to DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/DexKnifeConfig.java diff --git a/DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/DexKnifeExtension.groovy b/DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/DexKnifeExtension.groovy new file mode 100644 index 0000000..dffcbf0 --- /dev/null +++ b/DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/DexKnifeExtension.groovy @@ -0,0 +1,7 @@ +package com.ceabie.dexknife + +class DexKnifeExtension { + boolean enabled = false + String productFlavor = "" + String buildType = "" +} diff --git a/DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/DexKnifePlugin.groovy b/DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/DexKnifePlugin.groovy new file mode 100644 index 0000000..c7086b6 --- /dev/null +++ b/DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/DexKnifePlugin.groovy @@ -0,0 +1,121 @@ +/* + * Copyright (C) 2016 ceabie (https://github.com/ceabie/) + * + * 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. + */ +package com.ceabie.dexknife + +import org.gradle.api.Plugin +import org.gradle.api.Project + +/** + * the spilt tools plugin. + */ +public class DexKnifePlugin implements Plugin { + + @Override + void apply(Project project) { + + DexKnifeExtension dexKnifeExtension = project.extensions.create('dexKnife', DexKnifeExtension) + project.afterEvaluate { + boolean hasApp = project.plugins.hasPlugin("com.android.application") + print("-hasApp = ${hasApp}\n") + if (!hasApp) { + throw new IllegalStateException("'android' plugin required.") + } + + final def variants = project.android.applicationVariants + variants.each{variant -> + if (dexKnifeExtension.enabled) { + boolean checkProductFlavor = dexKnifeExtension.productFlavor == "" || dexKnifeExtension.productFlavor.equalsIgnoreCase(variant.flavorName) + boolean checkBuildType = dexKnifeExtension.buildType == "" || dexKnifeExtension.buildType.equalsIgnoreCase(variant.buildType.name) + if (checkProductFlavor && checkBuildType) { + printf "-DexKnifePlugin Enable = true\n"; + printf "-DexKnifePlugin checkProductFlavor = ${checkProductFlavor}\n"; + printf "-DexKnifePlugin checkBuildType = ${checkBuildType}\n"; + printf "-DexKnifePlugin buildType.name = ${variant.buildType.name}\n"; + printf "-DexKnifePlugin flavorName = ${variant.flavorName}\n"; + + filterActivity(project); + + if (isMultiDexEnabled(variant)) { + if (SplitToolsFor130.isCompat(variant)) { + System.err.println("DexKnife: Compat 1.3.0."); + SplitToolsFor130.processSplitDex(project, variant) + } else if (SplitToolsFor150.isCompat()) { + SplitToolsFor150.processSplitDex(project, variant) + } else { + System.err.println("DexKnife Error: DexKnife is not compatible your Android gradle plugin."); + } + } else { + System.err.println("DexKnife : MultiDexEnabled is false, it's not work."); + } + } + } + printf "-DexKnifePlugin Enable = false\n"; + } + } + } + + //filter Activity + private static void filterActivity(Project project) { + File file = project.file(DexSplitTools.DEX_KNIFE_CFG_TXT) + if (file != null) { + def justActivitys = []; + file.eachLine { line -> + //printf "read line ${line}\n"; + if (line.startsWith('-just activity')) { + line = line.replaceAll('-just activity', '').trim(); + justActivitys.add(line) + } + } + printf "-just activity size = ${justActivitys.size()}\n"; + if (justActivitys.size() != 0) { + project.tasks.each { task -> + if (task.name.startsWith('collect') && task.name.endsWith('MultiDexComponents')) { + println "main-dex-filter: found task $task.name" + task.filter { name, attrs -> + String componentName = attrs.get('android:name') + if ('activity'.equals(name)) { + def result = justActivitys.find { + componentName.endsWith("${it}") + } + def bool = result != null; + if (bool) { + printf "main-dex-filter: keep ${componentName}\n" + } + return bool + } + return true + } + } + } + } + } + } + + private static boolean isMultiDexEnabled(variant) { + def is = variant.buildType.multiDexEnabled + if (is != null) { + return is; + } + + is = variant.mergedFlavor.multiDexEnabled + if (is != null) { + return is; + } + + return false + } + +} \ No newline at end of file diff --git a/DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/DexSplitTools.java b/DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/DexSplitTools.java similarity index 89% rename from DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/DexSplitTools.java rename to DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/DexSplitTools.java index e7d1235..a545af3 100644 --- a/DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/DexSplitTools.java +++ b/DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/DexSplitTools.java @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + package com.ceabie.dexknife; import org.gradle.api.Project; @@ -27,7 +28,6 @@ import java.util.zip.ZipEntry; import java.util.zip.ZipFile; - /** * the base of spilt tools. * @@ -81,12 +81,14 @@ protected static void endDexKnife() { System.out.println("DexKnife Finished: " + time); } - public static boolean processMainDexList(Project project, boolean minifyEnabled, File mappingFile, - File jarMergingOutputFile, File andMainDexList, - DexKnifeConfig dexKnifeConfig) throws Exception { + public static boolean processMainDexList(Project project, boolean minifyEnabled, + File mappingFile, + File jarMergingOutputFile, File andMainDexList, + DexKnifeConfig dexKnifeConfig) throws Exception { if (!minifyEnabled && jarMergingOutputFile == null) { - System.out.println("DexKnife Error: jarMerging is Null! Skip DexKnife. Please report All Gradle Log."); + System.out.println( + "DexKnife Error: jarMerging is Null! Skip DexKnife. Please report All Gradle Log."); return false; } @@ -96,6 +98,10 @@ public static boolean processMainDexList(Project project, boolean minifyEnabled, /** * get the config of dex knife + * + * @param project project + * @return DexKnifeConfig + * @throws Exception exception */ protected static DexKnifeConfig getDexKnifeConfig(Project project) throws Exception { BufferedReader reader = new BufferedReader(new FileReader(project.file(DEX_KNIFE_CFG_TXT))); @@ -154,14 +160,14 @@ protected static DexKnifeConfig getDexKnifeConfig(Project project) throws Except } else if (DEX_KNIFE_CFG_LOG_MAIN_DEX.equals(cmd)) { dexKnifeConfig.logMainList = true; - } else if (DEX_KNIFE_CFG_LOG_FILTER_SUGGEST.equals(cmd)) { + } else if (DEX_KNIFE_CFG_LOG_FILTER_SUGGEST.equals(cmd)) { dexKnifeConfig.logFilterSuggest = true; - }else if (matchCommand(cmd, DEX_KNIFE_CFG_SUGGEST_SPLIT)) { + } else if (matchCommand(cmd, DEX_KNIFE_CFG_SUGGEST_SPLIT)) { String sPattern = line.substring(DEX_KNIFE_CFG_SUGGEST_SPLIT.length()).trim(); addClassFilePath(sPattern, splitSuggest); - } else if (matchCommand(cmd, DEX_KNIFE_CFG_SUGGEST_KEEP)) { + } else if (matchCommand(cmd, DEX_KNIFE_CFG_SUGGEST_KEEP)) { String sPattern = line.substring(DEX_KNIFE_CFG_SUGGEST_KEEP.length()).trim(); addClassFilePath(sPattern, keepSuggest); @@ -188,9 +194,9 @@ protected static DexKnifeConfig getDexKnifeConfig(Project project) throws Except keepSuggest.addAll(keepMain); } -// for (String s : splitSuggest) { -// System.out.println("Suggest: " + s); -// } + // for (String s : splitSuggest) { + // System.out.println("Suggest: " + s); + // } if (!splitSuggest.isEmpty() || !keepSuggest.isEmpty()) { dexKnifeConfig.suggestPatternSet = new PatternSet() @@ -199,11 +205,10 @@ protected static DexKnifeConfig getDexKnifeConfig(Project project) throws Except } } - if (!splitToSecond.isEmpty() || !keepMain.isEmpty()) { -// for (String s : splitToSecond) { -// System.out.println(s); -// } + // for (String s : splitToSecond) { + // System.out.println(s); + // } dexKnifeConfig.patternSet = new PatternSet() .exclude(splitToSecond) .include(keepMain); @@ -275,8 +280,8 @@ private static Spec getMaindexSpec(PatternSet patternSet) { * generate the main dex list */ private static boolean genMainDexList(Project project, boolean minifyEnabled, - File mappingFile, File jarMergingOutputFile, - File andMainDexList, DexKnifeConfig dexKnifeConfig) throws Exception { + File mappingFile, File jarMergingOutputFile, + File andMainDexList, DexKnifeConfig dexKnifeConfig) throws Exception { System.out.println(":" + project.getName() + ":genMainDexList"); @@ -289,7 +294,8 @@ private static boolean genMainDexList(Project project, boolean minifyEnabled, patternSet = dexKnifeConfig.patternSet; } - mainCls = getAdtMainDexClasses(andMainDexList, patternSet, dexKnifeConfig.logFilterSuggest); + mainCls = getAdtMainDexClasses(andMainDexList, patternSet, + dexKnifeConfig.logFilterSuggest); System.out.println("DexKnife: use suggest"); } @@ -300,12 +306,14 @@ private static boolean genMainDexList(Project project, boolean minifyEnabled, if (minifyEnabled) { System.err.println("DexKnife: From Mapping"); // get classes from mapping - mainClasses = getMainClassesFromMapping(mappingFile, dexKnifeConfig.patternSet, mainCls); + mainClasses = getMainClassesFromMapping(mappingFile, dexKnifeConfig.patternSet, + mainCls); } else { System.out.println("DexKnife: From MergedJar: " + jarMergingOutputFile); if (jarMergingOutputFile != null) { // get classes from merged jar - mainClasses = getMainClassesFromJar(jarMergingOutputFile, dexKnifeConfig.patternSet, mainCls); + mainClasses = getMainClassesFromJar(jarMergingOutputFile, dexKnifeConfig.patternSet, + mainCls); } else { System.err.println("DexKnife: The Merged Jar is not exist! Can't be processed!"); } @@ -332,7 +340,8 @@ private static boolean genMainDexList(Project project, boolean minifyEnabled, } private static ArrayList getMainClassesFromJar( - File jarMergingOutputFile, PatternSet mainDexPattern, HashSet mainCls) throws Exception { + File jarMergingOutputFile, PatternSet mainDexPattern, HashSet mainCls) + throws Exception { ZipFile clsFile = new ZipFile(jarMergingOutputFile); Spec asSpec = getMaindexSpec(mainDexPattern); ClassFileTreeElement treeElement = new ClassFileTreeElement(); @@ -361,9 +370,9 @@ private static ArrayList getMainClassesFromJar( /** * Gets main classes from mapping. * - * @param mapping the mapping file + * @param mapping the mapping file * @param mainDexPattern the main dex pattern - * @param mainCls the main cls + * @param mainCls the main cls * @return the main classes from mapping * @throws Exception the exception * @author ceabie @@ -409,10 +418,12 @@ private static ArrayList getMainClassesFromMapping( /** * get the maindexlist of android gradle plugin */ - private static HashSet getAdtMainDexClasses(File outputDir, PatternSet mainDexPattern, boolean logFilter) + private static HashSet getAdtMainDexClasses(File outputDir, PatternSet mainDexPattern, + boolean logFilter) throws Exception { if (outputDir == null || !outputDir.exists()) { - System.err.println("DexKnife Warning: Android recommand Main dex is no exist, try run again!"); + System.err.println( + "DexKnife Warning: Android recommand Main dex is no exist, try run again!"); return null; } @@ -420,7 +431,8 @@ private static HashSet getAdtMainDexClasses(File outputDir, PatternSet m BufferedReader reader = new BufferedReader(new FileReader(outputDir)); ClassFileTreeElement treeElement = new ClassFileTreeElement(); - Spec asSpec = mainDexPattern != null? getMaindexSpec(mainDexPattern): null; + Spec asSpec = mainDexPattern != null ? getMaindexSpec(mainDexPattern) + : null; String line, clsPath; while ((line = reader.readLine()) != null) { @@ -433,11 +445,13 @@ private static HashSet getAdtMainDexClasses(File outputDir, PatternSet m boolean satisfiedBy = asSpec.isSatisfiedBy(treeElement); if (!satisfiedBy) { - if (logFilter) System.out.println("DexKnife-Suggest: [Split] " + clsPath); + if (logFilter) + System.out.println("DexKnife-Suggest: [Split] " + clsPath); continue; } - if (logFilter) System.out.println("DexKnife-Suggest: [Keep] " + clsPath); + if (logFilter) + System.out.println("DexKnife-Suggest: [Keep] " + clsPath); } mainCls.add(line); @@ -469,4 +483,4 @@ static int getAndroidPluginVersion(String version) { return ver; } -} \ No newline at end of file +} diff --git a/DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/InjectAndroidBuilder.groovy b/DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/InjectAndroidBuilder.groovy similarity index 100% rename from DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/InjectAndroidBuilder.groovy rename to DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/InjectAndroidBuilder.groovy diff --git a/DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/SplitToolsFor130.groovy b/DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/SplitToolsFor130.groovy similarity index 100% rename from DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/SplitToolsFor130.groovy rename to DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/SplitToolsFor130.groovy diff --git a/DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/SplitToolsFor150.groovy b/DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/SplitToolsFor150.groovy similarity index 100% rename from DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/SplitToolsFor150.groovy rename to DexKnifePlugin/dexknife-plus/src/main/groovy/com/ceabie/dexknife/SplitToolsFor150.groovy diff --git a/DexKnifePlugin/gradle-dexknife-plugin/src/main/resources/META-INF/gradle-plugins/com.ceabie.dexnkife.properties b/DexKnifePlugin/dexknife-plus/src/main/resources/META-INF/gradle-plugins/dexknifePlus.properties similarity index 100% rename from DexKnifePlugin/gradle-dexknife-plugin/src/main/resources/META-INF/gradle-plugins/com.ceabie.dexnkife.properties rename to DexKnifePlugin/dexknife-plus/src/main/resources/META-INF/gradle-plugins/dexknifePlus.properties diff --git a/DexKnifePlugin/gradle-dexknife-plugin/build.gradle b/DexKnifePlugin/gradle-dexknife-plugin/build.gradle deleted file mode 100644 index 55ccedf..0000000 --- a/DexKnifePlugin/gradle-dexknife-plugin/build.gradle +++ /dev/null @@ -1,131 +0,0 @@ -buildscript { - repositories { - mavenLocal() - jcenter() - } - - dependencies { - classpath "org.jfrog.buildinfo:build-info-extractor-gradle:3.1.1" - classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:1.3" - } -} - -apply plugin: 'groovy' -apply plugin: 'maven' -apply plugin: 'maven-publish' -apply plugin: 'idea' -apply plugin: 'com.jfrog.artifactory' -apply plugin: 'com.jfrog.bintray' - -repositories { - jcenter() -} - -configurations { - provided { - dependencies.all { dep -> - configurations.default.exclude group: dep.group, module: dep.name - } - } - compile.extendsFrom provided -} - -compileGroovy { - sourceCompatibility = JavaVersion.VERSION_1_7 - targetCompatibility = JavaVersion.VERSION_1_7 - options.encoding = "UTF-8" -} - -//sourceSets { -// main { -// compileClasspath += configurations.provided -//// runtimeClasspath += configurations.provided -// } -//} - -dependencies { - compile gradleApi() - compile localGroovy() - provided 'com.android.tools.build:builder:2.1.3' - provided 'com.android.tools.build:gradle-core:2.1.3' -} - -//version = "${PUBLIC_VERSION}" -//group = 'com.ceabie.dextools' -// -//def pomConfig = { -// licenses { -// license { -// name "The Apache Software License, Version 2.0" -// url "http://www.apache.org/licenses/LICENSE-2.0.txt" -// distribution "repo" -// } -// } -// developers { -// developer { -// id "ceabie" -// name "ceabie" -// email "ceabie@gmail.com" -// } -// } -//} -// -//publishing { -// publications { -// mavenJava(MavenPublication) { -// from components.java -// artifact sourcesJar -// -// pom.withXml { -// def root = asNode() -// root.appendNode('description', 'A simple android gradle plugin to use the wildcards of package to smart split the specified classes to second dex.') -// root.children().last() + pomConfig -// } -// } -// } -//} -// -//bintray { -// user = bintrayUser -// key = bintrayApiKey -// -// publications = ['mavenJava'] -// pkg { -// repo = 'gradle-plugins' -// name = 'gradle-dexknife-plugin' -// labels = ['gradle', 'plugin', 'dex', 'split sex', 'multidex'] -// websiteUrl = POM_URL -// vcsUrl = POM_URL + '.git' -// issueTrackerUrl = POM_URL + '/issues' -// licenses = ["Apache-2.0"] -// version { -// name = "${PUBLIC_VERSION}" -// attributes = ['gradle-plugin': 'com.ceabie.dextools:gradle-dexknife-plugin'] -// } -// } -// publish = true -//} - -task sourcesJar(type: Jar) { - from sourceSets.main.allSource - classifier = 'sources' -} - -artifacts { - archives sourcesJar -} - -task wrapper(type: Wrapper, description: 'Gradle Wrapper task') { - gradleVersion = '2.8' -} - -uploadArchives { - repositories { - mavenDeployer { - repository(url: uri('../repo')) - pom.version = "${DEV_VERSION}" - pom.artifactId = "gradle-dexknife-plugin" - pom.groupId = "com.ceabie.dextools" - } - } -} \ No newline at end of file diff --git a/DexKnifePlugin/gradle-dexknife-plugin/gradle.properties b/DexKnifePlugin/gradle-dexknife-plugin/gradle.properties deleted file mode 100644 index dd9513d..0000000 --- a/DexKnifePlugin/gradle-dexknife-plugin/gradle.properties +++ /dev/null @@ -1,2 +0,0 @@ -PUBLIC_VERSION=1.5.6 -DEV_VERSION=2.0.2 \ No newline at end of file diff --git a/DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/DexKnifePlugin.groovy b/DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/DexKnifePlugin.groovy deleted file mode 100644 index 58f1299..0000000 --- a/DexKnifePlugin/gradle-dexknife-plugin/src/main/groovy/com/ceabie/dexknife/DexKnifePlugin.groovy +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Copyright (C) 2016 ceabie (https://github.com/ceabie/) - * - * 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. - */ -package com.ceabie.dexknife - -import org.gradle.api.Plugin -import org.gradle.api.Project - -/** - * the spilt tools plugin. - */ -public class DexKnifePlugin implements Plugin { - - @Override - void apply(Project project) { - //过滤Activity组件 - project.afterEvaluate { - File file = project.file(DexSplitTools.DEX_KNIFE_CFG_TXT) - if (file != null) { - def justActivitys = []; - file.eachLine { line -> - //printf "read line ${line}\n"; - if (line.startsWith('-just activity')) { - line = line.replaceAll('-just activity', '').trim(); - justActivitys.add(line) - } - } - printf "-just activity size = ${justActivitys.size()}\n"; - if (justActivitys.size() != 0) { - project.tasks.each { task -> - if (task.name.startsWith('collect') && task.name.endsWith('MultiDexComponents')) { - println "main-dex-filter: found task $task.name" - task.filter { name, attrs -> - String componentName = attrs.get('android:name') - if ('activity'.equals(name)) { - def result = justActivitys.find { - componentName.endsWith("${it}") - } - def bool = result != null; - if (bool) { - printf "main-dex-filter: keep ${componentName}\n" - } - return bool - } - return true - } - } - } - } - } - } - - project.afterEvaluate { - for (variant in project.android.applicationVariants) { - if (isMultiDexEnabled(variant)) { - if (SplitToolsFor130.isCompat(variant)) { - System.err.println("DexKnife: Compat 1.3.0."); - SplitToolsFor130.processSplitDex(project, variant) - } else if (SplitToolsFor150.isCompat()) { - SplitToolsFor150.processSplitDex(project, variant) - } else { - System.err.println("DexKnife Error: DexKnife is not compatible your Android gradle plugin."); - } - } else { - System.err.println("DexKnife : MultiDexEnabled is false, it's not work."); - } - } - } - } - - private static boolean isMultiDexEnabled(variant) { - def is = variant.buildType.multiDexEnabled - if (is != null) { - return is; - } - - is = variant.mergedFlavor.multiDexEnabled - if (is != null) { - return is; - } - - return false - } - -} \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.jar b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.jar deleted file mode 100644 index 6a1238f..0000000 Binary files a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.jar and /dev/null differ diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.jar.md5 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.jar.md5 deleted file mode 100644 index 21e1398..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -a217530cc52eecb9c21f7fd1d17268dd \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.jar.sha1 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.jar.sha1 deleted file mode 100644 index 6596572..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -50d30810daa3dca6f97f805a8e53e6f9661cf6e4 \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.pom b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.pom deleted file mode 100644 index c4f75b0..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.pom +++ /dev/null @@ -1,8 +0,0 @@ - - - 4.0.0 - com.ceabie.dextools - gradle-dexknife-plugin - 2.0.0 - diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.pom.md5 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.pom.md5 deleted file mode 100644 index f526914..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.pom.md5 +++ /dev/null @@ -1 +0,0 @@ -f92f147a2c254aea34efd104c6e087ca \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.pom.sha1 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.pom.sha1 deleted file mode 100644 index d4c7afe..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.0/gradle-dexknife-plugin-2.0.0.pom.sha1 +++ /dev/null @@ -1 +0,0 @@ -3681338a03f9c6e1f4d20ed48d3817b070645bb1 \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.jar b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.jar deleted file mode 100644 index 289ff04..0000000 Binary files a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.jar and /dev/null differ diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.jar.md5 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.jar.md5 deleted file mode 100644 index 31f5310..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -19ba9da317955101b4505c530933fafc \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.jar.sha1 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.jar.sha1 deleted file mode 100644 index 5027f47..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -499d19de3b48b7e96a495748d808f6f93ecda2df \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.pom b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.pom deleted file mode 100644 index af99925..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.pom +++ /dev/null @@ -1,8 +0,0 @@ - - - 4.0.0 - com.ceabie.dextools - gradle-dexknife-plugin - 2.0.1 - diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.pom.md5 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.pom.md5 deleted file mode 100644 index 4cb6837..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.pom.md5 +++ /dev/null @@ -1 +0,0 @@ -bde96269e8d5e1098594fb20b7548545 \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.pom.sha1 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.pom.sha1 deleted file mode 100644 index d63d558..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.1/gradle-dexknife-plugin-2.0.1.pom.sha1 +++ /dev/null @@ -1 +0,0 @@ -15d752decef7fc19c516c16654ea4c7fad4b1ebc \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar deleted file mode 100644 index d3db649..0000000 Binary files a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar and /dev/null differ diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar.md5 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar.md5 deleted file mode 100644 index 8c7c97c..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -3f9d7434355ddde497a237203d8dd60a \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar.sha1 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar.sha1 deleted file mode 100644 index 58c7796..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -d4d943bc8228de0d65bddafabcc2ce333017c03d \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar deleted file mode 100644 index 19037e5..0000000 Binary files a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar and /dev/null differ diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar.md5 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar.md5 deleted file mode 100644 index f432054..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -26147badbff68f8e7ecc79081be6b906 \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar.sha1 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar.sha1 deleted file mode 100644 index c66e71e..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -f5ab73500dc4d8868304d7a8731f86d84f63ced6 \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom deleted file mode 100644 index 1924b37..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom +++ /dev/null @@ -1,8 +0,0 @@ - - - 4.0.0 - com.ceabie.dextools - gradle-dexknife-plugin - 2.0.2 - diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom.md5 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom.md5 deleted file mode 100644 index f0914df..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom.md5 +++ /dev/null @@ -1 +0,0 @@ -adea40026d297e149210a01b2b89f527 \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom.sha1 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom.sha1 deleted file mode 100644 index d0270dc..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom.sha1 +++ /dev/null @@ -1 +0,0 @@ -c7d6573638a789e47b5765ffcab09f3be0ba035f \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml deleted file mode 100644 index b618fa3..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - com.ceabie.dextools - gradle-dexknife-plugin - - 2.0.2 - - 2.0.0 - 2.0.2 - - 20160920073808 - - diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml.md5 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml.md5 deleted file mode 100644 index d10478e..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml.md5 +++ /dev/null @@ -1 +0,0 @@ -d930a21e5fec7fdc206c9d1125604b59 \ No newline at end of file diff --git a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml.sha1 b/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml.sha1 deleted file mode 100644 index 28f7787..0000000 --- a/DexKnifePlugin/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml.sha1 +++ /dev/null @@ -1 +0,0 @@ -406e547c9497edbe78ead40c2be96c0d103290e6 \ No newline at end of file diff --git "a/DexKnifePlugin/repo/com/\345\210\206\345\214\205\346\217\222\344\273\266.txt" "b/DexKnifePlugin/repo/com/\345\210\206\345\214\205\346\217\222\344\273\266.txt" deleted file mode 100644 index e69de29..0000000 diff --git "a/DexKnifePlugin/repo/\346\234\254\345\234\260\344\273\223\345\272\223.txt" "b/DexKnifePlugin/repo/\346\234\254\345\234\260\344\273\223\345\272\223.txt" deleted file mode 100644 index e69de29..0000000 diff --git a/DexKnifePlugin/settings.gradle b/DexKnifePlugin/settings.gradle index 1d8667f..303963d 100644 --- a/DexKnifePlugin/settings.gradle +++ b/DexKnifePlugin/settings.gradle @@ -1,3 +1,3 @@ include ':app', ':lib1' -include ':gradle-dexknife-plugin' +include ':dexknife-plus' diff --git a/README.md b/README.md index 3034057..da9dcf6 100644 --- a/README.md +++ b/README.md @@ -107,28 +107,38 @@ afterEvaluate { 于是乎就将Gradle脚本整合进了插件,这样只需维护一个配置文件就行了。读者可以根据自己需求自行选择分开配置还是整合配置。通过这种方式我们把主Dex的方法数维持在15000左右,从此再也不用担心方法数问题了!!! ##配置部分 -**第一步:将repo目录复制到项目根目录** - -**第二步:添加根目录Gradle** +**第一步:添加根目录Gradle** ``` buildscript { - repositories { - maven { - url uri('repo') - } - } - dependencies { - classpath 'com.ceabie.dextools:gradle-dexknife-plugin:2.0.2' + classpath 'com.library.tangxiaolv:dexknife-plus:1.0.1' } } - ``` -**第三步:在你的App模块的build.gradle添加插件** +**第二步:在你的App模块的build.gradle添加插件** ``` -apply plugin: 'com.ceabie.dexnkife' +apply plugin: 'dexknifePlus' ``` +**第三步:配置参数** +``` +dexKnife{ + //必选参数 + enabled true //if false,禁用分包插件 + //可选参数 + //1.如果没有可选参数,将根据enabled决定是否分包。 + //2.如果有可选参数,需满足必选参数和可选参数的条件才允许分包 + productFlavor 'mock' + buildType 'debug' + /* + *eg:当前productFlavors = dev,buildType = debug, + *参数组合1:enabled = true,productFlavor = dev,buildType = debug 分包 + *参数组合2:enabled = true,productFlavor = mock,buildType = debug 不分包 + *参数组合1:enabled = true,buildType = debug 所有buildType = debug分包 + *参数组合1:enabled = true,productFlavor = dev 所有productFlavor = dev分包 + * */ +} +``` **第四步:在你的App模块目录下新建dexknife.txt,并自定义配置** ``` #为注释符 diff --git a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar b/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar deleted file mode 100644 index d3db649..0000000 Binary files a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar and /dev/null differ diff --git a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar.md5 b/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar.md5 deleted file mode 100644 index 8c7c97c..0000000 --- a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -3f9d7434355ddde497a237203d8dd60a \ No newline at end of file diff --git a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar.sha1 b/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar.sha1 deleted file mode 100644 index 58c7796..0000000 --- a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2-sources.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -d4d943bc8228de0d65bddafabcc2ce333017c03d \ No newline at end of file diff --git a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar b/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar deleted file mode 100644 index 19037e5..0000000 Binary files a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar and /dev/null differ diff --git a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar.md5 b/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar.md5 deleted file mode 100644 index f432054..0000000 --- a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -26147badbff68f8e7ecc79081be6b906 \ No newline at end of file diff --git a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar.sha1 b/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar.sha1 deleted file mode 100644 index c66e71e..0000000 --- a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -f5ab73500dc4d8868304d7a8731f86d84f63ced6 \ No newline at end of file diff --git a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom b/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom deleted file mode 100644 index 1924b37..0000000 --- a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom +++ /dev/null @@ -1,8 +0,0 @@ - - - 4.0.0 - com.ceabie.dextools - gradle-dexknife-plugin - 2.0.2 - diff --git a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom.md5 b/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom.md5 deleted file mode 100644 index f0914df..0000000 --- a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom.md5 +++ /dev/null @@ -1 +0,0 @@ -adea40026d297e149210a01b2b89f527 \ No newline at end of file diff --git a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom.sha1 b/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom.sha1 deleted file mode 100644 index d0270dc..0000000 --- a/repo/com/ceabie/dextools/gradle-dexknife-plugin/2.0.2/gradle-dexknife-plugin-2.0.2.pom.sha1 +++ /dev/null @@ -1 +0,0 @@ -c7d6573638a789e47b5765ffcab09f3be0ba035f \ No newline at end of file diff --git a/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml b/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml deleted file mode 100644 index b618fa3..0000000 --- a/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - com.ceabie.dextools - gradle-dexknife-plugin - - 2.0.2 - - 2.0.0 - 2.0.2 - - 20160920073808 - - diff --git a/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml.md5 b/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml.md5 deleted file mode 100644 index d10478e..0000000 --- a/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml.md5 +++ /dev/null @@ -1 +0,0 @@ -d930a21e5fec7fdc206c9d1125604b59 \ No newline at end of file diff --git a/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml.sha1 b/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml.sha1 deleted file mode 100644 index 28f7787..0000000 --- a/repo/com/ceabie/dextools/gradle-dexknife-plugin/maven-metadata.xml.sha1 +++ /dev/null @@ -1 +0,0 @@ -406e547c9497edbe78ead40c2be96c0d103290e6 \ No newline at end of file diff --git "a/repo/com/\345\210\206\345\214\205\346\217\222\344\273\266.txt" "b/repo/com/\345\210\206\345\214\205\346\217\222\344\273\266.txt" deleted file mode 100644 index e69de29..0000000 diff --git "a/repo/\346\234\254\345\234\260\344\273\223\345\272\223.txt" "b/repo/\346\234\254\345\234\260\344\273\223\345\272\223.txt" deleted file mode 100644 index e69de29..0000000