codecamp

SDK怎么使用

什么是 SDK

要开发应用程序,您需要一个软件开发工具包(SDK)。一个典型的 SDK 示例是 Java 开发工具包 (也称为 JDK 或 Java SDK)。这是一个用于生成 Java 应用程序的 SDK。

IntelliJ IDEA 不包括 SDK。因此,在开始编写代码之前,您必须下载并安装至少一个SDK,并在 IntelliJ IDEA 中定义该 SDK。(您可以在创建第一个项目时或以后指定一个 SDK。)

如果要在 IntelliJ IDEA 中定义 SDK,一般来说,您所要做的就是指定它的位置。(这个位置通常被称为 SDK 主目录,这是安装 SDK 的目录)。可以进行额外的 SDK调整,但是在大多数情况下,它们不是必需的。

IntelliJ IDEA 支持的SDK

根据您的应用程序的性质,您可以使用:

  • Java SE 开发套件(JDK) 开发 Java 桌面和企业应用程序。
  • 移动 SDK(Java Micro Edition(ME)SDK)开发支持 Java 的移动设备的应用程序。
  • Android SDK 开发 Android 设备的应用程序。
  • Flex 和 AIR SDK 开发 Adobe Flash 平台的应用程序。
  • Flexmojos SDK 用于启动 Flex 编译器和调试器。(此类 SDK 由 IntelliJ IDEA 在导入 Flexmojos 项目时自动创建。)
  • IntelliJ Platform Plugin SDK 开发 IntelliJ IDEA 插件。(IntelliJ IDEA 安装充当 IntelliJ 平台插件 SDK。)
请注意,支持的 SDK 类型的集合取决于正在使用的 IntelliJ IDEA 版本(Community 或 Ultimate),以及当前启用的插件。

IntelliJ IDEA 中 SDK 级别

所有的 SDK 通常都是全局的,不管你在什么时候定义 SDK,你可以在任何项目中使用该 SDK。

其中一个 SDK 被分配给一个项目,并被称为项目 SDK。默认情况下,此 SDK 由相应项目的所有模块使用。

模块可以使用(“继承”)项目 SDK,或者可以指定特定于模块的 SDK。

SDK内容(类路径,源路径和文档路径)

当您定义新的 SDK 时,IntelliJ IDEA 会分析 SDK 安装文件夹(主目录)的内容,以了解相应的二进制文件,源和相关文档所在的位置。因此,SDK 中的所有适当位置都将转换为相应的路径并分配到以下类别之一:

类路径。 这是一组包含 SDK 二进制文件的目录和存档的路径。例如,对于 JDK,此集合包括构成 Java API 及其扩展的类目录和 JAR 文件的路径。

您可以在此集合中添加更多 SDK 库,但是,对于任何标准 SDK,这都不是必需的。

源路径。 这是一组目录和存档的路径,其中包含类路径集中包含的 SDK 二进制文件的源代码。

包括源文件不是必需的,但这样做可以提高 IntelliJ IDEA 在编码时提供内联帮助的能力(查看| 快速文档(View | Quick Documentation)或Ctrl+Q)。

文档路径。 这是一组描述 SDK 源代码的文档的路径。

包括文档路径也是可选的,但这样做可以让您直接从 IDE 查看文档(查看| 外部文档(View | External Documentation)或Shift+F1)。

如果可以使用 SDK 的在线文档,则可以在 SDK 文档路径()中添加相应的URL,以便在需要时可以访问此文档。

创建 IntelliJ IDEA 项目或模块时定义 SDK

在 IntelliJ IDEA 中,您可以在创建项目或模块时定义新的 SDK。请参见创建、运行和打包第一个 Java 应用程序的项目。

创建 IntelliJ IDEA 项目或模块时定义SDK

因此,SDK 定义将显示在 IDE 级别。除此之外:

  • 如果您在创建项目时定义了 SDK,则 SDK 将作为默认项目 SDK 分配给项目。与项目一起创建的模块将继承项目 SDK。
  • 如果您在创建模块时定义了 SDK,则 SDK 将被分配给该模块。

IntelliJ IDEA 管理全局,项目和模块 SDK

与使用 SDK 相关的大多数任务都是在“项目结构”对话框(文件| 项目结构(File | Project Structure))中执行的。这取决于 SDK 级别:

全局(IDE)。 要查看所有可用的 SDK,请选择 SDKs。

IntelliJ IDEA 管理全局,项目和模块 SDK


要定义新的 SDK,请单击,选择 SDK 类型(例如 JDK),然后指定 SDK 安装目录。

项目。要查看哪个 SDK 被用作项目默认 SDK,请选择“项目”。

IntelliJ IDEA 管理全局,项目和模块 SDK


如果要使用其他的 SDK,请从列表中选择该 SDK。如果您所需要的 SDK 尚未在 IntelliJ IDEA 中定义,请单击 "新建" 开始添加其定义。

请注意,如果您更改了项目 SDK,则使用默认项目 SDK 的所有模块将相应更改其 SDK。

模块。 要查看模块使用了哪个 SDK,请选择“模块”,选择感兴趣的模块,然后选择“依赖关系”。

IntelliJ IDEA 管理全局,项目和模块 SDK


如果你在模块 SDK 字段中有文本项目 SDK,则该模块正在使用项目默认SDK。要为模块指定不同的 SDK,请使用列表或新建(New)按钮。

在 MacOS 上的 IntelliJ IDEA 中可以访问 Apple JDK 源

MacOS 安装中包含的 Apple JDK 不包括 JDK 源。为了让这些源可以在 IntelliJ IDEA 中访问,您应该下载并安装用于 Java macOS 开发人员包,然后将该包中包含的 JDK 源 (src. jar) 添加到 IntelliJ 思想中相应 JSDK 的定义中。

  1. 在 Web 浏览器中,转到 Apple Developers 页面下载。
  2. 使用您的 Apple 开发者帐户(Apple ID 和密码)登录下载页面。
  3. 下载并安装适用于您正在使用的 macOS 版本的 MacOS Update Developer Package(MacOS 更新开发人员包) 的 Java。
  4. 在 IntelliJ IDEA 中,打开“项目结构”对话框(例如,按 Ctrl+Shift+Alt+S)并选择 SDKs。
  5. 选择感兴趣的 Apple JDK。(如果列表中不存在相应的 JDK,请添加其定义:| JDK 等)
  6. 在对话框右侧显示的 SDK 页面上,选择 Sourcepath 选项卡,然后单击(Alt+Insert)。
  7. 在打开的对话框中,选择文件 src.jar 并单击“确定”。(通常,此是文件位于:/Library/Java/JavaVirtualMachines/<java.version>/Contents/Home 其中 <java.version> 是您的 JDK 版本,例如:1.6.0_31-b04-415.jdk 或类似的东西。)
  8. 在 "项目结构" 对话框中单击 "确定"。
配置IntelliJ IDEA的内容根目录
IntelliJ IDEA如何使用库
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

IntelliJ IDEA的一般准则

什么是IntelliJ IDEA项目

使用IntelliJ IDEA的意图行为

IntelliJ IDEA使用运行/调试配置

特定于VCS的程序

IntelliJ IDEA语言和特定框架指南

IntelliJ IDEA的数据库和SQL功能

IntelliJ IDEA使用之JavaServer Faces(JSF)

IntelliJ IDEA:分析PHP应用程序的性能

IntelliJ IDEA:调试PHP应用程序

IntelliJ IDEA:适用于PHP的Google App Engine

IntelliJ IDEA更多内容

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }