【问题标题】:What is the Android plugin version included in IntelliJ IDEA?IntelliJ IDEA 中包含的 Android 插件版本是什么?
【发布时间】:2014-12-03 10:26:02
【问题描述】:

...以及如何(以权威的方式)找到它?

在 Android Studio 0.8.11 中:当我检查相同时,它显示 10.0.8.11。对应于http://tools.android.com/recenthttp://developer.android.com/sdk/installing/studio.html

在 IDEA EAP 14 中:当我转到 Settings > Plugins > Android Support 时,显示的版本号为 10.0,这与 IDEA/Android Studio/SDK/API 的最新版本不对应。以上所有 v10 版本都太旧了,不能成为前沿软件中的默认捆绑包。

我检查了.jar 文件的META-INF,但没有运气。一些.jar 的名字提供了线索,这是我能够推断的:

╔════════════════════════════════╦═══════════════╦═══════════════╦════════════════╗
║                                ║ IntelliJ IDEA ║ IntelliJ IDEA ║ Android Studio ║
╠════════════════════════════════╬═══════════════╬═══════════════╬════════════════╣
║ Version                        ║ 13.1.5        ║ 14 EAP        ║ 0.8.11         ║
║ Build                          ║ IC-135.1289   ║ IC-138.2458.8 ║ AI-135.1446794 ║
║ Date                           ║ 2014-09-30    ║ 2014-09-25    ║ 2014-09-18     ║
║ builder-model.jar              ║ 0.12.0        ║ 0.12.0        ║ 0.13.0         ║
║ Android Support Plugin version ║ 10.0          ║ 10.0          ║ 10.0.8.11      ║
║ IntelliJ IDEA equivalent       ║ 13.1.5        ║ 14.x          ║ 13.1.5 RC**    ║
║ Android Studio equivalent      ║ 0.8.?*        ║ 0.8.?*        ║ 0.8.11         ║
╚════════════════════════════════╩═══════════════╩═══════════════╩════════════════╝

* 基于 Gradle pluginAndroid Studio Beta 的发布日期
**We've merged in the latest changes from IntelliJ 13.1.5 RC

版本看起来并没有那么远,我想知道0.8.? 版本到底是什么。我尝试在 IDEA 14 文件夹中交换 plugins/android(并删除重复的 EP:Designer.customizations),但它在启动后与 NoSuchMethodErrors 一起闪闪发光!

【问题讨论】:

    标签: android intellij-idea android-studio android-gradle-plugin


    【解决方案1】:

    对于较新的 Intellij 版本(2020+):内置 Android Gradle 插件版本在 Settings -> Plugins -> Android 中可见:10.android-version.intellijbuild-version

    例子:

    • 安卓版本:4.0
    • IDEA 版本:203.5419.21

    来源:https://youtrack.jetbrains.com/issue/IDEA-252823#focus=Comments-27-4444522.0-0

    【讨论】:

      【解决方案2】:

      我想我找到了一个更具体的答案,并不完美;正如斯科特所说,这真的很复杂。我发现android插件是从getPlugins script中不在github上的外部存储库引用的:

      git clone git://git.jetbrains.org/idea/android.git android

      查找 IntelliJ 的 git 修订日志

      1. 转到 IntelliJ IDEA 中的 Help > About(或安装文件夹中的 build.txt
      2. 查看版本号(当前最新的是IC-139.222.5)
      3. http://git.jetbrains.org/?p=idea/android.git;a=shortlog;h=refs/tags/idea/139.222.5
      4. 查找最后一次合并:Merge branch 'studio-1.0-release' of .../platform/tools/adt/idea

      很遗憾,我在Google Android Studio repo 中没有找到任何指向修订范围的明确指针,但您可以尝试按日期匹配。

      对于 IntelliJ IDEA website > Downloads 上的 13.1.5:构建:135.1289

      后备

      可以粗略估计一下

      IntelliJ IDEA\plugins\android\lib\android.jar\META-INF\plugin.xml

      明确最低版本是:<version>10.0.8.12</version>,因为此后的任何提交可能会被合并,直到该行更改为下一个版本。 p>

      【讨论】:

        【解决方案3】:

        这很复杂,这将是一个很长的答案。不幸的是,我们没有一个好的简短答案,因为我们没有以有意义的方式对插件进行版本控制。这是我们应该做的。

        要回答这个问题,需要查看 JetBrains 的提交日志,了解他们不同版本的 IntelliJ。如果我下载 IntelliJ CE 附带的 Android 插件的 git 存储库(请参阅下面的更长答案和更多详细信息),我会看到:

        • 13.1.5:大致相当于 Android Studio 0.8.6。需要并支持 v0.12 的 Android Gradle 插件。
        • 14:它跟踪最新版本的 Android Studio,但可能会滞后一周。确切的版本将取决于 JetBrains 在删除给定版本之前何时从 Android 团队提取插件的源代码。它需要 v0.12 的 Android Gradle 插件并支持 0.13。

        关于长解释:

        Android 构建工具团队与 JetBrains 进行双向代码共享。 Android Studio 构建在 IntelliJ 代码库的 135 分支之上(它解释了您在其内部版本号中看到的 IC-135),因此 Android Studio 源自 IJ 13.1.5,并带有一些尚未发布的修改和补丁上游。我们不打算在 1.0 版本之前迁移到 138 分支,因此即使在发布时它仍然是基于 13 的,而不是基于 14 的。

        在 JetBrains 方面,他们主要从 Android 为插件进行上游更改,但他们也有人员在他们这边工作(这些更改会合并回 Android Studio 端)。在 13 生命周期的这一点上,他们缓慢地发布它,并且对于他们引入 Android 插件的内容更加保守(为了稳定性),所以它不是完全最新的。他们发布主要产品中的错误修复,而不是获取最新的 Android 插件。

        一般来说,如果您运行的是 IJ 13,可能无法仅升级您的 Android 插件。插件的更改经常需要更改底层平台; Android Studio 将接受这些更改,因为它的平台与它的插件一起发布,但 IJ 需要等到这些更改上传到上游。话虽如此,这些变化的速度现在很慢,但它仍然会发生。

        对于 14 EAP 版本,他们应该更快地从 Android 中提取更改,以便构建应该更准确地反映 Android Studio 的当前状态,尽管这再次取决于他们执行这些拉取的频率。

        需要注意的是,大部分情况下,我们不会与 JetBrains 协调发布或代码拉取,因此 14 EAP 的给定版本将反映他们执行代码拉取时 Android 插件的当前状态。因此,它可能对应于 Android Studio 版本之间的某些状态。

        回答 cmets 中关于为什么 Android Studio 和 IntelliJ 是独立产品的问题:

        • Android Studio 旨在为 Android 开发人员提供定制化和简化的体验。它侧重于 Gradle 构建系统(不鼓励尝试使用非基于 Gradle 的项目),并且删除了许多对 Android 开发人员没有意义的功能和选项。
        • 对于需要更大灵活性的用户,我们鼓励他们使用 IntelliJ CE。
        • IntelliJ Ultimate Edition 是该产品的付费版本,具有非常强大的附加功能,对于需要这些功能的用户来说,它是一个不错的选择。
        • IntelliJ 和 Android 插件最初是由 IntelliJ 开发的,它们都不会消失。 Android 团队正在与 JetBrains 合作,以改进这两种产品中的 Android 支持,并将 Android Studio 作为针对特定受众的优化产品提供。

        如果您想要一个 IDE 中的所有内容,那么您最好的选择可能是运行 IntelliJ CE 或 Ultimate。它应该具有 Android Studio 的所有重要功能,尽管在某些地方使用起来可能会比较粗糙。如果您发现其中不正常但在 Android Studio 中可以正常工作(尤其是与 Gradle 项目支持相关),那么我们认为这是一个错误,因此请提交。

        【讨论】:

        • 出于好奇,为什么会同时开发一个独立的 IntelliJ Android 插件一个全新的基于 IntelliJ 的 IDE?拥有一个或另一个不是更容易吗?类似于不需要从头开始开发 Eclipse。只是好奇,因为为同一目的开发两件东西似乎比一件更难。
        • @Zhuinden 的问题的答案太棒了,永远不要改变那个观点!我正在从 Eclipse 切换到 IntelliJ,我不想安装 2 个版本(Android Studio 和 IDEA 用于除 Android 之外的所有内容)。
        • “我们不打算在我们达到 1.0 时迁移到 138 分支”:这真是个悲伤的消息,根据目前的发布速度,IDEA 14 似乎会比 1.0 更早发布到那时可能会成为主流。同样根据您所说,他们在 14 分支上已经有一个高达 0.8.5+ 的 Android 插件,所以它是兼容的!我知道虽然 14 还没有,而且对于 1.0 版本来说可能还不够稳定。
        • @ScottBarta 所以如果我想要 1 个多语言 IDE,最好使用 14 个 EAP?我知道它几乎与 Android Studio Beta 同步,但有时它可能“有点粗糙”,而且它不是 Google 支持的 Android 开发方式。
        • @TWiStErRob 是的,如果你只想要一个 IDE,那么 IJ 可能是你最好的选择——编辑了我的答案。
        猜你喜欢
        • 2014-08-13
        • 2019-06-18
        • 2016-02-16
        • 1970-01-01
        • 2013-03-22
        • 2014-06-16
        • 1970-01-01
        • 2022-10-21
        • 2015-08-05
        相关资源
        最近更新 更多