Android Studio – 导入外部库/ Jar

我最近下载了Android Studio来开发Android应用程序(我来自Eclipse),而且我在使用外部库和/或外部JAR文件以及我自己的项目时遇到了问题。 注意 :以下testing是在Android Studio中从头开始创build的应用程序项目上进行的。

示例1:JAR导入。

  1. 从Google下载Admobs SDK的全新副本。

  2. 将库jar子GoogleAdMobAdsSdk-6.4.1.jar到项目的/ libs /文件夹中。

  3. 在项目浏览器中,右键单击新添加的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 

有任何想法吗?

Solutions Collecting From Web of "Android Studio – 导入外部库/ Jar"

所以,

为了使用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\'
  • 在命令提示符处,inputgradlew clean ,等待完成。
  • 在Android Studio中重新打开您的应用程序项目。
  • testing运行你的应用程序,它应该工作成功。

您不需要closures该项目并转到命令行来调用grade:clean。 转到生成 – >重build项目

简单的方法,它适用于我。 使用Android Studio 0.8.2。

  1. 在libs下拖动jar文件。
  2. 按下“使用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文件:

  1. 将你的jar文件拖到libs文件夹中。
  2. 右键单击jar文件并selectAdd Library,现在jar文件是一个库,可以将它添加到编译path中
  3. 打开build.gradle文件(注意至less有两个build.gradle文件,不要使用root项目在你的项目范围中使用)。
  4. find依赖项部分(对我来说,我正在尝试admob -GoogleAdMobAdsSdk jar文件)例如

     dependencies { compile files('libs/android-support-v4.jar','libs/GoogleAdMobAdsSdk-6.3.1.jar') } 
  5. 最后进入settings.gradle并确保它看起来像这样:

     include ':yourproject', ':yourproject:libs:GoogleAdMobAdsSdk-6.3.1' 
  6. 最后,转到生成 – >重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到你的项目中:

  1. 文件 – >项目结构下的菜单
  2. 只要按' F4 '
  3. 在项目导航下,右击任何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,如果你愿意。