我正在尝试将外部库导入我的应用程序,该库是FFmpeg。这是指向module的链接。
我将库添加到我的libs文件夹(下载后),然后从File&gt;新&gt; <导入模块>选择FFmpeg。现在在我的应用程序内构建gradle我添加了行
compile project(':FFmpeg')
现在,当我尝试同步项目时,我收到此错误:
错误:(2,0)带有id&#39; com.github.dcendents.android-maven&#39;的插件没找到。
当我打开文件时,这是受影响的行
申请插件:&#39; com.github.dcendents.android-maven&#39;
基本上我的最终目标是将上面的lib作为外部库放入我的项目中,这样我就可以修改源代码来修复库中的一些错误。
非常感谢任何帮助,我一直试图解决这个问题很长一段时间,但除了使用依赖项之外我对Gradle也不太好。
更新1
应用问题现已修复,但无法找到版本名称和rootProject.ext.compileSdkVersion等变量作为整数
错误:(6,0)无法获取未知属性&#39; VERSION_NAME&#39;对于项目&#39;:FFmpegAndroid&#39;类型为org.gradle.api.Project。
答案 0 :(得分:1)
您需要将插件添加到类路径根build.gradle中。您可以在Gradle Android Maven plugin中找到它。像这样:
buildscript {
repositories {
jcenter()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.3'
// This is the classpath for the plugin
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'
}
}
allprojects {
repositories {
jcenter()
}
}
<强>更新:强>
您应该查看ffmpeg android gradle.properties并将其添加到您的根项目中,这里是:
VERSION_NAME=0.3.2
VERSION_CODE=28
GROUP=com.writingminds
POM_DESCRIPTION=Java implementation of ffmpeg for Android
POM_URL=https://github.com/writingminds/ffmpeg-android-java
POM_SCM_URL=https://github.com/writingminds/ffmpeg-android-java.git
POM_SCM_CONNECTION=scm:https://github.com/writingminds/ffmpeg-android-java.git
POM_SCM_DEV_CONNECTION=scm:https://github.com/writingminds/ffmpeg-android-java.git
POM_LICENCE_NAME=GNU GPLv3
POM_LICENCE_URL=https://github.com/writingminds/ffmpeg-android-java/blob/master/LICENSE.GPLv3
POM_LICENCE_DIST=repo
POM_DEVELOPER_ID=hiteshsondhi88
POM_DEVELOPER_NAME=Hitesh Sondhi
Ffmpeg Android build.gradle中需要VERSION_NAME:
apply plugin: 'com.android.library'
apply plugin: 'com.github.dcendents.android-maven'
apply plugin: "com.jfrog.bintray"
// This is the library version used when deploying the artifact
version = VERSION_NAME
...
<强>通知:强>
最好将ffmpeg-android-java作为独立项目运行,然后对其进行配置,以便将其安装到本地maven。请在我的回答https://stackoverflow.com/a/46330142/4758255
上阅读详细信息答案 1 :(得分:0)
您必须在buildscript
块中添加插件。您可以添加顶级build.gradle
文件或module/build.gradle
buildscript {
repositories {
jcenter()
}
dependencies {
//..current plugins
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.3'
}
}
关于未找到的变量,您必须在github
上查看库中的build.gradle
您必须在项目中定义这些变量。当然要用你的价值观。
ext {
compileSdkVersion = 22
buildToolsVersion = '22.0.1'
targetSdkVersion = 22
minSdkVersion = 16
versionCode = 28
versionName = "0.3.2"
}