Amper logo

Amper

The project configuration and build tool focused on user experience and IDE support.

Amper 更新 – 2024 年 2 月

Read this post in other languages:

Amper 是 JetBrains 的实验性项目配置工具。 随着 0.2.0 版本及其配套工具的发布,我们有多项精彩功能更新和亮点分享。

Amper 现已支持 Gradle 版本目录、针对添加新依赖项的补全等!继续阅读了解详情。

Gradle 版本目录

为了使 Amper 更易添加到使用 Gradle 版本目录的现有项目中,Amper 现在可以使用 $libs.library.name 语法访问这些目录中声明的依赖项。

IDE 为目录中声明的库提供了补全:

您还可以从 Amper 清单导航到引用的目录条目,并查找 Amper 模块中目录条目的用法:

意图操作可供向目录轻松添加新依赖项,如果直接使用依赖项(当它也可作为目录条目使用时),检查会发出警告:

得益于 Amper 清单和版本目录文件的声明性,补全和检查会在您编辑目录文件时实时更新,不需要您重新导入项目。

针对依赖项的补全支持

为了使依赖项及其版本更易查找,您现在编辑 Amper 清单时将获得依赖项的补全,此功能由 Package Search(软件包搜索)提供支持:

此补全功能知道您正在处理哪个依赖项块,并且只会建议兼容的依赖项:

在此示例中,搜索适用于所有平台的 Coil 仅提供支持 KMP 的 3.x 版本,而搜索适用于 Android 的 Coil 则会显示仅适用于 Android 的 2.x 版本。

在 IntelliJ IDEA 中创建 Amper 项目

从 IntelliJ IDEA 2024.1(目前在 EAP 中提供)开始,您可以在使用 New Project(新建项目)向导时创建基于 Amper 的新 Kotlin 项目:

IDE功能

Fleet、IntelliJ IDEA 和 Android Studio 支持 Amper。 这些 IDE 提供了用于处理 Amper 模块清单的专用工具。

您可以从清单文件中的装订区域图标轻松运行任何 Amper 应用程序:

除了常规补全之外,架构的嵌套补全还可让您轻松找到您可能想要设置的特定配置值:

快速文档快捷键可以帮助您发现正确的语法和各种配置条目的可用选项:

开始使用 Amper

首先,请查看教程示例项目。 您还可以查看具有共享 UI原生 UI 的 KMP 模板应用。

如果您使用的是 Fleet,则此处显示的功能可在 1.30 及更高版本中提供。 您可以使用 JetBrains Toolbox App 下载最新版本

要在 IntelliJ IDEA 中访问这些 Amper 功能,请使用 2024.1 EAP 或更高版本,并确保您已安装最新版本的 Amper 插件

更新到最新版本

如果您已经在项目中使用 Amper,请将其更新到最新版本

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
plugins {
id("org.jetbrains.amper.settings.plugin").version("0.2.0")
}
plugins { id("org.jetbrains.amper.settings.plugin").version("0.2.0") }
plugins {
    id("org.jetbrains.amper.settings.plugin").version("0.2.0")
}

这个新版本还需要添加一些额外仓库:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
pluginManagement {
repositories {
// Amper repositories
maven("https://maven.pkg.jetbrains.space/public/p/amper/amper")
maven("https://www.jetbrains.com/intellij-repository/releases")
maven("https://packages.jetbrains.team/maven/p/ij/intellij-dependencies")
}
}
pluginManagement { repositories { … // Amper repositories maven("https://maven.pkg.jetbrains.space/public/p/amper/amper") maven("https://www.jetbrains.com/intellij-repository/releases") maven("https://packages.jetbrains.team/maven/p/ij/intellij-dependencies") } }
pluginManagement {
    repositories {
        …

        // Amper repositories
 
        maven("https://maven.pkg.jetbrains.space/public/p/amper/amper")
        maven("https://www.jetbrains.com/intellij-repository/releases")
        maven("https://packages.jetbrains.team/maven/p/ij/intellij-dependencies")
    }
}

分享您的反馈

Amper 仍处于实验阶段,正在积极开发中。 虽然您目前还不应当在生产中使用它,但我们希望您试用 Amper 并与我们分享您对该工具的想法。 您的反馈将帮助塑造 Amper 的未来!

要提供体验反馈,请加入 Kotlinlang Slack 上的 #amper 频道,或在 YouTrack 上的问题中分享建议和想法。

本博文英文原作者: