如何使用 IntelliJ 将外部库的源代码和 javadoc 添加到 gradle?

2024-01-07

我已经使用 IntelliJ 和 Gradle 建立了一个 Java 项目。我的根项目中有一个 build.gradle 文件,我可以编译并运行我的应用程序。

然而...我正在使用一个Java 库,它附带了源代码和javadoc zip 文件。如果我在源代码中想要访问此库中的类或方法的声明,IntelliJ 会调出.class文件而不是源.javazip 中提供的文件。

我如何告诉 gradle 使用外部库提供的源代码和 javadoc zip?


我不确定你的库是否存储在 Maven 存储库中。我想是的。

我知道将 gradle 项目导入 IntelliJ 的两种方法。第一个是 IntelliJ 的“导入项目...”向导,效果很好。但它不会导入 javadoc jar(如果存在)。至少我从来没有成功过。

第二种方法使用gradle 2.1中的idea插件。该插件为您生成项目。这样我就得到了里面的javadoc。 build.gradle 的完整工作示例:

apply plugin: 'java'
apply plugin: 'idea'

sourceCompatibility = '1.7'
targetCompatibility = '1.7'

repositories {
    mavenCentral()
}

dependencies {
    compile group: 'org.apache.commons', name: 'commons-compress', version: '1.8.1'
    compile group: 'com.google.guava', name: 'guava', version: '18.0'

    testCompile group: 'junit', name: 'junit', version: '4.11'
    testCompile group: 'org.mockito', name: 'mockito-all', version: '1.8.5'
}

idea{
    project {
        languageLevel = '1.7'
    }
    module {
        downloadJavadoc = true // defaults to false
        downloadSources = true
    }
}

您可以致电gradle cleanIdea idea这将为 IntelliJ 创建您的项目。

如果您的库没有存储在 Maven 存储库中,您只需在上传它的地方放置一个连接即可。这将允许您使用上述方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 IntelliJ 将外部库的源代码和 javadoc 添加到 gradle? 的相关文章

随机推荐

  • 在unity 3D中更改Cubical Shower 3d模型的尺寸

    我正在开发一个项目 该项目有一个立方体淋浴作为 3D 模型 它有两个不同的侧面 如前面提到的侧面 1 和侧面 2 另外一侧 1 分为两个屏幕 并且具有玻璃 框架和支架 与一侧 1 的屏幕 2 相同 我想在不改变支撑宽度和框架尺寸的情况下增加
  • 无 BOM 的 UTF-8

    我有 javascript 文件 每次我将它们转换为正确的格式时 我需要将它们保存为 UTF 8 无 BOM 记事本 当我在 Visual Studio 中打开它们时 它们会恢复为带有 BOM 的 UTF 8 我怎样才能阻止VS2010这样
  • 如何使用 JQuery 将样式应用到正确的标签

    我正在尝试添加更多逻辑my code https stackoverflow com questions 38539500 get input value using htmlfor 但它不起作用 我必须将我的图标包裹在span标签 这样我
  • DatePicker 无法在模态中工作

    我有一个网站和这是一个链接 http pastebin com WHHMnh3S 当您单击文本字段时 您可以看到 DatePicker 正在工作 但如果你点击我mportFriend gt Add Manual Friend gt 然后 如
  • @FunctionalInterface 如何影响 JVM 的运行时行为?

    我最初的问题是完全重复的this one https stackoverflow com q 27121563 1093528 也就是说 为什么这个接口有运行时保留策略 但接受的答案根本不能令我满意 原因有二 事实上这个接口是 Docume
  • 对于同一个 REST 方法,我们是否可以有多个 @Path 注释 [重复]

    这个问题在这里已经有答案了 我们可以有多个吗 Path同一 REST 方法的注释 即执行的方法相同 但在访问多个 URL 时执行 例如 我想运行searchNames 两者的方法http a b c and http a b 你不能有多个
  • Xamarin 表单的 YouTube 播放器

    您好 我正在尝试在以下支持下创建一个从 webview 继承的 youtubeviewyoutube api https github com nishanil YouTubePlayeriOS blob master Classes Yo
  • 由于无法找到或加载主类错误,Flink 集群未启动

    我正在尝试设置flink并运行集群 尽管我得到以下输出 看起来集群已启动 bin start cluster sh Starting cluster Starting standalonesession daemon on host LAP
  • 使用 ExoPlayer 将 YouTube 直播视频 (DASH) 流式传输到 Android 应用程序

    我正在制作一个可以将实时 YouTube 视频流式传输到我的应用程序的应用程序 我想使用 ExoPlayer 我浏览了 ExoPlayer 的演示应用程序 他们在 DASH 流中使用的 URL 是这样的 uri http www youtu
  • 如何在 Python / Matplotlib 中根据特征值和特征向量绘制椭圆?

    给定一个二维数据集 我想在数据周围绘制一个椭圆 为此 我首先计算了协方差矩阵及其相关的特征值 cov np cov X T eigenvalues eigenvectors np linalg eig cov 我现在想使用 matplotl
  • Django REST Framework 序列化器 - 访问现有外键

    我在用Django 休息框架 http www django rest framework org api guide serializers在我的应用程序中 我需要创建包含外键的新模型实例 这些引用另一个表中的现有对象 因此我不希望创建这
  • 将参数传递给 NSTimer 调用的方法

    如何将参数传递给 NSTimer 调用的方法 我的计时器看起来像这样 NSTimer scheduledTimerWithTimeInterval 4 target self selector selector updateBusLocat
  • Cx 冻结错误 - Python 34

    我有一个 Cx Freeze 安装文件 我正在尝试使其工作 令人非常沮丧的是used适当冷冻 但是现在我收到以下错误 编辑 显示的错误不是通过控制台的 Python 异常 而是尝试启动通过冻结生成的结果 exe 文件时的崩溃报告 文件 no
  • 为什么在 while 循环中使用 itrerator 对象时需要进行类型转换? [复制]

    这个问题在这里已经有答案了 我现在正在学习java 在编写遍历代码时ArrayList using Iterator在使用迭代器的对象之前 我必须使用类名next 功能 有人能帮我解决这个问题吗 import java util publi
  • 使用“在模型中保存起始值”选项来帮助 Dymola 中的收敛

    I build a model in dymola Even though there are some errors during the initialization process but the calculation succee
  • Python 文档字符串模板化

    为什么动态格式化文档字符串不起作用 是否有可接受的解决方法来执行此操作在函数定义时 gt gt gt DEFAULT BAR moe s tavern gt gt gt def foo bar DEFAULT BAR hello this
  • IONIC 键盘隐藏在输入焦点上

    我正在编写一个 Ionic 应用程序 该应用程序将用于医疗保健领域的物流目的 用于此应用程序的设备具有内置条形码扫描仪并在 android 4 1 1 上运行 该扫描仪在输入字段中输入数据 并通过按 输入 键提交数据 由于扫描仪在某些情况下
  • 将本地存储从 Cordova 应用迁移到 Android 应用

    我们在 Playstore 中有一个使用 Cordova 开发的应用程序 现在我们已经在原生 Android 中重建了整个应用程序 现在我们希望在不注销的情况下将用户从以前的应用程序升级到新应用程序 为此 如何将Cordova window
  • 根据累计和和组创建新组

    我希望根据两个条件创建一个新组 我希望在 Value 的累计总和达到 10 之前将所有案例分组在一起 并且我希望在每个人中完成此操作 我已经设法让它分别适用于每个条件 但不能同时使用 for 循环和 dplyr 但是 我需要同时应用这两个条
  • 如何使用 IntelliJ 将外部库的源代码和 javadoc 添加到 gradle?

    我已经使用 IntelliJ 和 Gradle 建立了一个 Java 项目 我的根项目中有一个 build gradle 文件 我可以编译并运行我的应用程序 然而 我正在使用一个Java 库 它附带了源代码和javadoc zip 文件 如