Shadow icon indicating copy to clipboard operation
Shadow copied to clipboard

aar-to-jar-plugin 发布到本地仓的方式找不到啊

Open lizhanqi opened this issue 2 years ago • 6 comments

发布本地仓,本地仓压根没有aar-to-jar-plugin 。解决下被

lizhanqi avatar May 27 '22 04:05 lizhanqi

aar-to-jar-plugin是属于coding group的,也就是一些服务于Shadow这个项目内部的模块,所以不需要发布到maven中。Shadow的接入方是不会依赖这些模块的。

如果你需要复用这个模块,是可以在buildScripts/gradle/maven.gradle中仿照其他模块的发布配置添加这个模块的。

不将这些内部模块的发布任务都加到maven.gradle中使它们成为对外服务的模块,是为了减少维护成本。对外服务的模块需要考虑接口的前后兼容性。内部服务的模块可以较为随意的变更接口。

shifujun avatar May 28 '22 03:05 shifujun

在source 中的 sample-app模块下有项目依赖 pluginCompileOnly project(":sample-host-lib") normalImplementation project(":sample-host-lib") 那么是不是应该把sample-host-lib 单独发布一个jar文件或者maven给接入方呢? 目前想通过shadow 调用接入方里面的方法 并返回数据.(调用过程种可能回有页面展示等所以不能直接用dexloader方式简单的实现) 是不是在sample-host-lib对外提供接口即可了.谢谢指导

lizhanqi avatar May 28 '22 07:05 lizhanqi

在source 中的 sample-app模块下有项目依赖 pluginCompileOnly project(":sample-host-lib") normalImplementation project(":sample-host-lib") 那么是不是应该把sample-host-lib 单独发布一个jar文件或者maven给接入方呢? 目前想通过shadow 调用接入方里面的方法 并返回数据.(调用过程种可能回有页面展示等所以不能直接用dexloader方式简单的实现) 是不是在sample-host-lib对外提供接口即可了.谢谢指导

没能理解这和aar-to-jar-plugin的关系。

shifujun avatar May 28 '22 08:05 shifujun

//以下内容主要用于发布插件 apply plugin: 'maven-publish' apply plugin: 'java-library' repositories { mavenCentral() } group = 'com' version = '1.0.0'

publishing { publications { upload(MavenPublication) { from components.java } } repositories { maven { name('mukun') url('') credentials { username = '' password = '' } } } } 试了下用这个发布是可以的

hjqiaho avatar Oct 27 '22 02:10 hjqiaho

aar-to-jar-plugin

因为sample-host-lib 模块中的build.gradle文件引入了"apply plugin: 'com.tencent.shadow.internal.aar-to-jar' 如果不把这个插件发布到私服,那么就会报错。

我遇到的问题是: 找不到 classpath 'com.tencent.shadow.coding:aar-to-jar-plugin' 这个插件。请问这个插件是放在哪里的?

budaowengd avatar Sep 09 '23 03:09 budaowengd

碰到了一样的问题,希望这些能帮助你

def codingGroupId = 'com.tencent.shadow.internal'
def codingPath = 'projects/sdk/coding'
publishing {
    publications {
        aarToJarPlugin(MavenPublication) {
            groupId codingGroupId + ".aar-to-jar-plugin"
            artifactId codingGroupId + ".aar-to-jar-plugin.gradle.plugin"
            version publicationVersion
            artifact("$codingPath/aar-to-jar-plugin/build/libs/aar-to-jar-plugin.jar")
            artifact sourceJar("aar-to-jar-plugin", "$codingPath/aar-to-jar-plugin")

            pom.withXml {
                def root = asNode()
                def dependencies = root.appendNode('dependencies')
                dependencies.append(getDependencyNode('compile', 'org.jetbrains.kotlin', 'kotlin-stdlib-jdk7', kotlin_version))
                dependencies.append(getDependencyNode('compile', 'com.android.tools.build', 'gradle', build_gradle_version))
                def scm = root.appendNode('scm')
                setScm(scm)
            }
        }
        androidJar(MavenPublication) {
            groupId codingGroupId + '.android-jar'
            artifactId codingGroupId + '.android-jar.gradle.plugin'
            version publicationVersion
            artifact("$codingPath/android-jar/build/libs/android-jar.jar")
            artifact sourceJar("android-jar", "$codingPath/android-jar")
            pom.withXml {
                def root = asNode()
                def dependencies = root.appendNode('dependencies')
                dependencies.append(getDependencyNode('compile', 'org.jetbrains.kotlin', 'kotlin-stdlib-jdk7', kotlin_version))
                dependencies.append(getDependencyNode('compile', codingGroupId, 'get-android-jar', publicationVersion))
                def scm = root.appendNode('scm')
                setScm(scm)
            }
        }
        codeGenerator(MavenPublication) {
            groupId codingGroupId + '.code-generator'
            artifactId codingGroupId + '.code-generator.gradle.plugin'
            version publicationVersion
            artifact("$codingPath/code-generator/build/libs/code-generator.jar")
            artifact sourceJar("code-generator", "$codingPath/code-generator")
            pom.withXml {
                def root = asNode()
                def dependencies = root.appendNode('dependencies')
                dependencies.append(getDependencyNode('compile', 'org.jetbrains.kotlin', 'kotlin-stdlib-jdk7', kotlin_version))
                dependencies.append(getDependencyNode('compile', 'com.squareup', 'javapoet', javapoet_version))
                dependencies.append(getDependencyNode('compile', 'org.javassist', 'javassist', javassist_version))
                dependencies.append(getDependencyNode('compile', 'junit', 'junit', junit_version))
                def scm = root.appendNode('scm')
                setScm(scm)
            }
        }
        commonJarSettings(MavenPublication) {
            groupId codingGroupId + '.common-jar-settings'
            artifactId codingGroupId + '.common-jar-settings.gradle.plugin'
            version publicationVersion
            artifact("$codingPath/common-jar-settings/build/libs/common-jar-settings.jar")
            artifact sourceJar("common-jar-settings", "$codingPath/common-jar-settings")
            pom.withXml {
                def root = asNode()
                def dependencies = root.appendNode('dependencies')
                dependencies.append(getDependencyNode('compile', 'org.jetbrains.kotlin', 'kotlin-stdlib-jdk7', kotlin_version))
                dependencies.append(getDependencyNode('compile', 'com.android.tools.build', 'gradle', build_gradle_version))
                dependencies.append(getDependencyNode('compile', 'org.jetbrains.kotlin', 'kotlin-gradle-plugin', kotlin_version))
                def scm = root.appendNode('scm')
                setScm(scm)
            }
        }
        getAndroidJar(MavenPublication) {
            groupId codingGroupId + '.get-android-jar'
            artifactId codingGroupId + '.get-android-jar.gradle.plugin'
            version publicationVersion
//            artifact("$codingPath/get-android-jar/build/libs/get-android-jar.jar")
            artifact sourceJar("get-android-jar", "$codingPath/get-android-jar")
            pom.withXml {
                def root = asNode()
                def dependencies = root.appendNode('dependencies')
//                dependencies.append(getDependencyNode('compile', 'org.jetbrains.kotlin', 'kotlin-stdlib-jdk7', kotlin_version))
//                dependencies.append(getDependencyNode('compile', 'com.android.tools.build', 'gradle', build_gradle_version))
//                dependencies.append(getDependencyNode('compile', 'org.jetbrains.kotlin', 'kotlin-gradle-plugin', kotlin_version))
                def scm = root.appendNode('scm')
                setScm(scm)
            }
        }
        javaBuildConfig(MavenPublication) {
            groupId codingGroupId + '.java-build-config'
            artifactId codingGroupId + '.java-build-config.gradle.plugin'
            version publicationVersion
            artifact("$codingPath/java-build-config/build/libs/java-build-config.jar")
            artifact sourceJar("java-build-config", "$codingPath/java-build-config")
            pom.withXml {
                def root = asNode()
                def dependencies = root.appendNode('dependencies')
//                dependencies.append(getDependencyNode('compile', 'org.jetbrains.kotlin', 'kotlin-stdlib-jdk7', kotlin_version))
//                dependencies.append(getDependencyNode('compile', 'com.android.tools.build', 'gradle', build_gradle_version))
//                dependencies.append(getDependencyNode('compile', 'org.jetbrains.kotlin', 'kotlin-gradle-plugin', kotlin_version))
                def scm = root.appendNode('scm')
                setScm(scm)
            }
        }
}

yaoyue1019 avatar Dec 22 '23 06:12 yaoyue1019