Android Studio – 导入外部库/ Jar
我最近下载了Android Studio来开发Android应用程序(我来自Eclipse),而且我在使用外部库和/或外部JAR文件以及我自己的项目时遇到了问题。 注意 :以下testing是在Android Studio中从头开始创build的新应用程序项目上进行的。
示例1:JAR导入。
-
从Google下载Admobs SDK的全新副本。
-
将库jar子
GoogleAdMobAdsSdk-6.4.1.jar
到项目的/ libs /文件夹中。 -
在项目浏览器中,右键单击新添加的library.jar,然后单击“添加为库”。
从技术上讲,在这一点上一切正常 ,导入工作正常,布局编辑器显示AdView
小部件的预览和所有这一切。 唯一的问题是它不能成功编译。
从控制台login:
Gradle: FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':APITests:compilePaidDebug'. > Compilation failed; see the compiler error output for details. * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Could not execute build using Gradle distribution 'http://services.gradle.org/distributions/gradle-1.6-bin.zip'.
我试着运行gradlew compileDebug --stacktrace
,问题似乎是,尽pipe能够在代码和devise编辑器中成功导入类,在编译时,它不能解决导入。 这里是日志的相关部分:( 完整的堆栈跟踪 )
java:6: error: package com.google.ads does not exist import com.google.ads.AdRequest; java:7: error: package com.google.ads does not exist import com.google.ads.AdView; java:11: error: cannot find symbol AdView mAdView; symbol: class AdView location: class MainActivity java:22: error: cannot find symbol mAdView = (AdView)this.findViewById(R.id.adView); symbol: class AdView location: class MainActivity java:23: error: cannot find symbol mAdView.loadAd(new AdRequest()); symbol: class AdRequest location: class MainActivity 5 errors :Test:compileDebug FAILED
但是,再次,import在编辑中运作良好,依赖关系在那里:
另外值得注意的是,如果不尝试添加库/ JAR,项目编译就好了。
然后我试着编辑build.gradle文件来包含这个新的lib:
dependencies { compile files('libs/android-support-v4.jar', 'libs/GoogleAdMobAdsSdk-6.4.1.jar') }
这一次,它编译成功,但现在应用程序强制closures,显然,它无法从应用程序包中的lib中find特定的类。
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.ads.AdView" on path: /data/app/com.foo.test-1.apk
有任何想法吗?
所以,
为了使用Android Studio 0.1.1将JAR文件导入到项目中,请遵循以下步骤:
- 下载library.jar文件并将其复制到您的应用程序项目中的/ libs /文件夹中。
- 打开build.gradle文件并编辑您的依赖项以包含新的.jar文件:
compile files('libs/android-support-v4.jar', 'libs/GoogleAdMobAdsSdk-6.4.1.jar')
- 文件 – >closures项目
- 打开项目根目录的命令提示符,即
'C:\Users\Username\AndroidStudioProjects\MyApplicationProject\'
- 在命令提示符处,input
gradlew clean
,等待完成。 - 在Android Studio中重新打开您的应用程序项目。
- testing运行你的应用程序,它应该工作成功。
您不需要closures该项目并转到命令行来调用grade:clean。 转到生成 – >重build项目
简单的方法,它适用于我。 使用Android Studio 0.8.2。
- 在libs下拖动jar文件。
- 按下“使用Gradle文件同步项目”button。
“简单的解决scheme在这里”
1。在应用程序目录下创build一个名为libs的文件夹,用于该项目中的任何目录。
2。 复制将库粘贴到libs文件夹
3. .You simply copy the JAR to your libs/ directory and then from inside Android Studio, right click the Jar that shows up under libs/ > Add As Library..
和平!
这里是我如何去专门为admob sdk jar文件:
- 将你的
jar
文件拖到libs文件夹中。 - 右键单击
jar
文件并selectAdd Library,现在jar文件是一个库,可以将它添加到编译path中 - 打开
build.gradle
文件(注意至less有两个build.gradle
文件,不要使用root项目在你的项目范围中使用)。 -
find依赖项部分(对我来说,我正在尝试admob -GoogleAdMobAdsSdk jar文件)例如
dependencies { compile files('libs/android-support-v4.jar','libs/GoogleAdMobAdsSdk-6.3.1.jar') }
-
最后进入
settings.gradle
并确保它看起来像这样:include ':yourproject', ':yourproject:libs:GoogleAdMobAdsSdk-6.3.1'
- 最后,转到生成 – >重build项目
你从Eclipse导出项目,然后从Android Studio导入项目,这应该解决你的问题,打开一个Eclipse项目,而不从Android Studio导入它可以导致问题,看看:(不好意思,我的语言,我会说西class牙语。) http ://developer.android.com/intl/es/sdk/installing/migrate.html
我遇到了问题,无法在Android Studio中的libs文件夹中加载jar文件。 如果你已经在libs文件夹中添加了JAR文件,只需打开build.gradle
文件并保存,而不需要编辑任何东西。 如果你已经添加了这一行
compile fileTree(dir: 'libs', include: ['*.jar'])
保存并清理项目。在下一次构build时,Android Studio将加载JAR文件。
希望这可以帮助。
我正在使用Android Studio 0.5.2。 所以如果你的版本比我低,我的答案可能不适合你。
3种方法来添加一个新的Jar到你的项目中:
- 文件 – >项目结构下的菜单
- 只要按' F4 '
- 在项目导航下,右键点击任何Java库,一个上下文菜单将显示,然后点击“ 打开库设置 ”
一个项目结构窗口将popup。
在左边的列上点击'Libraries',然后看看右边有一个加号“+”的窗格,然后点击它,然后input新库的path。
确保新库位于“project \ libs \”文件夹下,否则在保存项目源代码时可能会损坏链接。
我目前正在使用Android Studio 1.4。
为了导入和添加库,我使用了下面的stream程 – >
1. Press **Alt+Ctr+Shift+S** or Go to **File --> Project** Structure to open up the Project Structure Dialog Box. 2. Click on **Modules** to which you want to link the JAR to and Go to the Dependency Tab. 3. Click on "**+**" Button to pop up Choose Library Dependency. 4. Search/Select the dependency and rebuild the project.
我使用上述方法导入支持v4和v13库。
我希望这是有益的,并清除stream量。
我使用android工作室0.8.6和导入项目中的外部库,粘贴该库在libs文件夹和内部build.gradle写这个库内的依赖这样的编译文件('libs / google-play-services.jar')的path
在Android Studio(我的2.3.1)去文件 – 项目结构:
检查libs版本的要求。 lib可能试图从更高的Android版本中调用一个方法。 尝试添加应用程序兼容性库。
当所有其他的失败尝试从一个Gradle构build切换到Eclipse构build。
删除文件夹并将其重构为eclipse样式,并删除除代码之外的所有内容。 然后用你的库重新加载项目。
一旦运行,返回到Gradle,如果你愿意。