如何解决将现有 JAR 或 AAR 作为新项目模块导入
如何在A new Android Studio Arctic Fox 中将JAR 或AAR 包作为新项目模块导入| 2020.3.1 金丝雀 9 ?
请告诉我。
解决方法
这适用于 Android Studio Arctic Fox Beta 02
第 1 步:导航到, 文件 -> 项目结构。您也可以按 Ctrl+Alt+Shift+S
您将看到如下所示的窗口。
第 2 步:点击应用模块,如图所示
第 3 步:点击图中标记的 + 图标
第 4 步:您将看到选择 jar/aar 依赖项的选项。点击它
您将看到与上面一样的另一个窗口,要求您指定路径。指定保存 aar/jar 文件的路径,然后点击确定。
应该可以
,在我看来,最好的方法是将 jar/aar 部署到本地 Maven 存储库。如果您安装了 maven,您可以使用 gradle 中的 mavenLocal()
存储库并从那里读取任何其他存储库,无论您使用的是哪种 IDE。所有版本的 Android Studio 都可以运行,所有版本的 IntelliJ 都可以运行,VSCode 可以运行,命令行可以运行,等等。另一个优点是,您可以像与所有其他版本一样交换库的版本,只需更改 gradle 中的版本(在部署新版本后),即可适用于您的所有项目。手动将 jars/aars 放入项目只是一种不好的做法,而且实际上已经过时了。
安装 maven 后,在终端中输入:
mvn install:install-file -Dfile=d:\mylibrary-{version}.aar -DgroupId=com.example -DartifactId=mylibrary -Dversion={version} -Dpackaging=aar
根据类型交换 aar
和 jar
的位置。包名、组 ID 和库名由您决定,任何事情都行。如果您没有版本,我会使用库的包和名称以及 1.0 版。
这是一个示例链接。是旧的,但过程是一样的。 mvn install
,然后从 mavenLocal()
消费。
可以直接使用JAR/ARR文件路径实现。
implementation files('/File Path/file.aar')
,
步骤 1: 将您的 aar 文件放在 libs 文件夹中。我们以文件名supernover.aar为例。
第 2 步:将以下代码放入您的项目级别
build.gradle file,allprojects {
repositories {
jcenter()
flatDir {
dirs 'libs'
}
}
}
并在应用级模块中编写以下代码,
dependencies {
Implementation(name:'supernover',ext:'aar')
}
第 3 步:然后点击将项目与 Gradle 文件同步。
如果一切正常,那么您将看到在构建->中间体->爆炸-aar中创建了库条目。
,对于仍在寻找解决方案的任何人。
- 创建一个新的安卓应用项目。
- 将新项目转换为独立的库模块。
- 将
maven-publish
插件添加到模块级build.gradle
- 将您的项目连接到您的 Github 存储库(或创建一个新存储库)。
- 在模块级
build.gradle
中,实现 Github Packages 身份验证流程。我以“zuko”为例 - 用您的 Github 登录名替换该名称的每个实例。
android {
...
publishing {
repositories {
maven {
name = "GitHubPackages"
url = uri("https://maven.pkg.github.com/zuko/[git-repository]")
credentials {
username = 'zuko'
password = 'token' // this is a Git Personal Access Token
}
}
}
publications {
release(MavenPublication) {
groupId 'com.zuko.libraries'
artifactId 'choose-a-name'
version '1.0.0'
artifact("$buildDir/ogury-mediation-mopub-5.2.0.aar")
// you can actually put the artifact anywhere you want.
// This is the location of where you place your .aar file
}
}
}
...
}
-
如果一切正常,请保存您的工作,然后运行任务:
./gradlew publish
。错误日志很简单,因此只需按照说明和 Google 寻求更多帮助即可。 -
要将成功发布的软件包安装到您想要的项目中,请对
publishing.repositories
使用相同的身份验证过程,您不需要后半部分publishing.publications
。 -
示例:
implementation 'com.zuko.libraries:choose-a-name:1.0.0
'
您可以在 buildscript
中配置一个在本地目录中查找依赖项的存储库
使用它在应用模块的 build.gradle
中注册一个本地目录作为存储库,其中 libs
是应用模块 (<project>/app/libs/
) 下的目录
buildscript {
repositories {
flatDir { dirs 'libs' }
}
}
然后从您之前注册的本地文件树中声明您的依赖项
dependencies {
implementation fileTree(dir: 'libs',include: ['*.jar','*.aar'])
}
这将包括 libs
目录下存在的所有 jar/aar 工件,以包含在您的模块的依赖项中。
PS:本地 jar/aar 工件将期望任何传递依赖项都在类路径上,除非它们是 fat-jar(将所有传递依赖项打包在工件中),因此需要将它们显式添加为依赖项。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。