【问题标题】:importing jar libraries into android-studio将 jar 库导入 android-studio
【发布时间】:2013-09-15 04:00:15
【问题描述】:
android-studio 0.2.7
Fedora 18

你好,

我正在尝试将 jtwitter jar 添加到我的项目中。

首先我尝试执行以下操作:

1) Drag the jtwitter.jar into the root directory of my project explorer, see picture
2) File | project structure
3) Modules | yamba-yamba | dependencies
4) Click the plus sign | jars or directories | and navigate to jtwitter jar | click ok

当我导入 jar 文件时,出现以下错误:

import winterwell.jtwitter.Twitter;

Cannot resolve symbol winterwell
Gradle: error: package winterwell.jtwitter does not exist

我研究发现android-studio有一些问题,你必须自己编辑build.gradle文件。

所以我尝试将其添加到我的 build.gradle 文件中:

dependencies {
    compile files('libs/jtwitter.jar')

并收到一条错误消息:cannot resolve symbol dependencies

另一个问题,libs 文件夹在哪里。是指External Libraries吗?

【问题讨论】:

  • 您的 .jar 文件必须位于“libs”文件夹中。在你有“src”文件夹的地方创建一个名为“libs”的新文件夹,并将 jtwitter.jar 添加到这个文件夹中
  • 我添加了目录并将jar文件移动到它。我右键单击 jar 文件 |添加为库。但是,我仍然收到以下错误消息 Gradle:错误:包 winterwell.jtwitter 不存在。和 Gradle:错误:找不到符号类 Twitter。在我的 build.gradle 中,我得到:在根项目'Yamba' 上找不到参数 [文件集合] 的方法 compile()。
  • 不要添加为库。在主项目上单击 F4 并添加此库 - 通过 selectind + 作为“Jar 或目录”。检查hereherehere
  • 有没有办法避免在模块级别使用它?
  • 如果您使用的是Gradle,请参阅此StackOverflow question

标签: android android-studio


【解决方案1】:

试试这个...

  1. 在应用程序文件夹下创建 libs 文件夹。
  2. 将 .jar 文件添加到 libs 文件夹。
  3. 然后将 .jar 文件添加到应用的 build.gradle 依赖项中。
  4. 最终将项目与 Gradle 文件同步。

1.创建libs文件夹:

2.添加.jar到libs文件夹:

3.编辑应用的build.gradle依赖:

  • 打开 app/build.gradle

4.将项目与 Gradle 文件同步:

  • 最后将 .jar 文件添加到您的应用程序中。

更新:

这里我要将org.eclipse.paho.client.mqttv3.jar文件导入到我们的app模块中。

  1. 复制您的 jar 文件并将其粘贴到名为 libs 的目录中。

  1. 按 Ctrl + Alt + Shift + s 或单击工具栏上的项目结构图标。

  1. 然后选择要导入的.jar 文件的模块,然后选择依赖项选项卡。

  1. 单击加号图标,然后选择文件依赖项

  1. 选择.jar文件路径,点击确定构建gradle。

  1. 最后我们将 .jar 文件导入到我们的模块中。

【讨论】:

  • 可能我的 Android Studio 版本不同,但只要你的 libs 文件夹名为“libs”,我就不需要修改 build.gradle 文件。
  • 既然它说compile fileTree(dir: 'libs', include: ['*.jar']) 为什么我需要一个明确的compile files('libs/library.jar')
  • 我只是将 jar 文件添加到 libs 目录并点击 Sync Project with Gradle Files 并且它有效,不需要编辑 build.gradil 文件
  • 是的,不需要添加新行。隐式包含在 /libs
  • 这是了解该过程的最佳方式.. 非常感谢先生
【解决方案2】:

Android Studio 2 的更新答案

将 jar/aar 导入项目的简单而正确的方法是将其作为模块导入。

New -> Module

选择Import .JAR/.AAR

选择 .JAR/.AAR 文件并输入模块名称

将模块添加为依赖项

【讨论】:

  • 这实际上是用新的更新的 0.2.8 版本修复的。我所做的只是创建一个名为“libs”的新目录,将 jar 文件拖入其中。右键单击 jar 文件“添加为库”。这将展开 jar 文件。将此输入到 build.gradle 文件“依赖项 { compile files('libs/jtwitter.jar')} 中。输入导入语句以将类引入我的源文件。一切正常。
【解决方案3】:

运行 Android Studio 0.4.0 解决了通过

导入jar的问题
Project Structure > Modules > Dependencies > Add Files
Browse to the location of jar file and select it

对于喜欢手动编辑的人 打开 app/build.gradle

dependencies {
    compile files('src/main/libs/xxx.jar')
}

【讨论】:

  • 这对我也有效,无需在 Android Studio 0.43 中手动编辑任何文件。只需在 'main' 中创建一个目录 'libs' 并将 jar 文件复制到那里并按照上述步骤操作即可。
  • 也许你必须右键单击项目名称,然后选择打开模块设置,然后选择依赖项选项卡。
【解决方案4】:

在项目中右键

-> new -> module
-> import jar/AAR package
-> import select the jar file to import
-> click ok -> done

您可以按照以下截图进行操作:

1:

2:

3:

你会看到这个:

【讨论】:

  • 如何将多个 jar 添加到该模块?
  • 我没有一次导入.. 我对所有 jar 一次导入一次。 :)
  • Ganesh> 是的,在创建模块时,它允许你只选择一个单一的 Jar。如何向同一个模块添加更多 jar?
  • @jasper 我做了两次.. 一个一个
【解决方案5】:

Android Studio 1.0.1 并没有让它变得更清晰,但它确实让它变得更容易了。这对我有用:

1) 使用资源管理器,在 Project/app/src em> 文件夹,其中“Project”是您的项目的名称

2) 将您的 jar 文件复制到此“external_libs”文件夹中

3) 在 Android Studio 中,转到 File -> Project Structure -> Dependencies -> Add -> File Dependency 并导航到您的 jar 文件,该文件应位于 'src/external_libs'

3) 选择你的 jar 文件并点击 'Ok'

现在,检查您的 build.gradle (Module.app) 脚本,您将在其中看到已在“依赖项”下添加的 jar

【讨论】:

  • 如何添加库文件夹?
  • @WasifKhalil 只需右键单击要添加它的位置并创建新目录并选择您喜欢的名称。已经有一个名为<app_name>\app\libs 的目录。我刚用过。
  • 真的很奇怪,第一次没用。然后我删除“编译文件('src/external_libs/zbar.jar')”并同步,然后再次添加它,然后它工作了......奇怪的东西。
  • 对于 Android Studio 1.2.2,第 3 步是:选择 main main:File->ProjectStructure。单击左侧树视图中 MODULES 下的“应用程序”。单击“依赖项”选项卡(屏幕顶部)。单击“+”(屏幕右侧)进行添加。选择文件依赖。导航到 external_libs/ 中的文件。点击确定。
【解决方案6】:

这是从外部文件夹添加 jar 文件的方式

  1. 点击文件,然后点击新建和新模块

  2. 新窗口出现,,你必须选择导入.JAR/.AAR包。

  3. 点击窗口右上角的路径选项...并给出JAR文件的完整路径。

4)点击完成。

现在您已经添加了 Jar 文件,您需要将它添加到您的应用程序项目的依赖项中

1)右键点击应用文件夹,然后选择打开模块设置或F4

2)点击当前窗口右上角的依赖。

3)点击'+'符号并选择'Module Dependency',它会显示你已经包含在你的项目中的现有JAR文件...

选择你想要的,然后点击“确定/完成”

【讨论】:

  • 当你有 10 个相关的 jar 时,你会做什么 - 如何将它们全部添加到单个模块中?
  • 您可以对所有 jar 文件执行相同的步骤。它将添加到单个模块中
【解决方案7】:

Android Studio 1.0 使将 .jar 文件库添加到项目中变得更加容易。 转到文件>项目结构,然后单击依赖项。在那里,您可以将计算机中的 .jar 文件添加到项目中。也可以从 maven 中搜索库。

【讨论】:

    【解决方案8】:

    这是我刚刚在 Android Studio 版本 1.0.2 上所做的方式

    • 我在 [您的项目目录]\app\src 中创建了一个文件夹 libs
    • 我已将 jtwitter.jar(或 yambaclientlib.jar)复制到 [您的项目目录]\app\src\libs 目录
    • 如下菜单路径:File -> Project Structure -> Dependencies -> Add -> File Dependency,Android Studio会打开一个对话框,您可以在其中拖放 jar 库。然后我点击了确定按钮。

    此时 Gradle 将重建项目并导入库并解决依赖关系。

    【讨论】:

      【解决方案9】:

      我看到了很多复杂的答案。

      当我在新版本的 Android Studio 中添加我的 Aquery jar 文件时,所有这些都让我感到困惑。

      这就是我所做的:

      将 jar 文件复制粘贴到项目视图下可见的 libs 文件夹中。

      并且在 build.gradle 文件中刚刚添加了这一行:compile files('libs/android-query.jar')

      PS : 下载 jar 文件后,请更改其名称。我把名字改成了android-query.jar

      【讨论】:

        【解决方案10】:

        将 JAR 文件导入 Android Studio 有三种标准方法。第一个是传统方式,第二个是标准方式,最后一个是远程库。我在此链接中通过屏幕截图逐步解释了这些方法:

        https://stackoverflow.com/a/35369267/5475941

        希望对你有帮助。

        【讨论】:

          【解决方案11】:

          如果您的 jar 库的代码在 GitHub 上,那么使用 JitPack 可以轻松导入 Android Studio。

          您只需将存储库添加到 build.gradle:

          allprojects{
           repositories {
              jcenter()
              maven { url "https://jitpack.io" }
           }
          }
          

          然后将库的 GitHub 存储库作为依赖项:

          dependencies {
              // ...
              compile 'com.github.YourUsername:LibraryRepo:ReleaseTag'
          }
          

          JitPack 充当 Maven 存储库,可以像 Maven Central 一样使用。好处是您不必手动上传 jar。 JitPack 会在后台检查 GitHub 上的代码并进行编译。因此,它仅在 repo 中有构建文件 (build.gradle) 时才有效。

          还有a guide关于如何准备一个Android项目。

          【讨论】:

            【解决方案12】:

            避免冗余。如果默认情况下您的应用程序 build.gradle 中的 /libs 下有您的 jar,您将拥有

            dependencies {
                compile fileTree(dir: 'libs', include: ['*.jar'])
                ...
            }
            

            这足以添加您在 /libs 下的所有 jars

            这不是必须的

            //    compile files('libs/activation.jar')
            //    compile files('libs/additional.jar')
            //    compile files('libs/mail.jar')
            

            【讨论】:

              【解决方案13】:

              我也面临同样的障碍,但无法从给定的答案中找到解决方案。可能是由于项目路径具有特殊字符和空格等而发生...所以请尝试在您的 build.gradle 中添加此行。

              compile files('../app/libs/jtwitter.jar')// pass your .jar file name
              

              ".." (Double dot) 将找到您项目的根目录。

              【讨论】:

                猜你喜欢
                • 2013-05-22
                • 2016-02-13
                • 2015-05-28
                • 2016-01-13
                • 2014-02-24
                • 1970-01-01
                • 1970-01-01
                • 2015-11-05
                • 2016-02-17
                相关资源
                最近更新 更多