当前位置: 首页 > 知识库问答 >
问题:

Gradle是否具有“npm链接”等功能?

艾星河
2023-03-14

我正在考虑将我们的“mono repo”分离开来,以便每个可部署服务都有自己的repo。这样做的一个缺点是,对任何通用模块/库进行更改变得很繁琐,因为这需要先发布库,然后在gradle中更新版本以使用更改。

npm似乎通过npm链接绕过了这个问题,npm链接允许您在推动更改之前修改库并在应用程序中测试它。我想知道gradle或任何其他构建工具是否为java应用程序提供了类似的功能。

共有1个答案

汤修贤
2023-03-14

听起来复合构建是你想要的。该功能允许您用另一个构建替换项目依赖项。

例如,假设您有一个名为“Acme”的应用程序项目,它依赖于库“MyLib”。Acme通常从Maven Central或您公司的工件存储库下载MyLib。但是您想对MyLib进行一些更改并使用Acme进行测试,因此您获取MyLib的源代码,进行更改,然后使用复合构建功能使用修改后的MyLib运行Acme的构建。

请注意,您不必手动构建MyLib或在任何地方安装生成的工件。Gradle将自动执行MyLib的构建,并将其工件包含在Acme的构建中。

希望这有意义。

 类似资料:
  • 问题内容: 不幸的是,HTML中没有CDATA。 遗憾的是,因为它非常适合添加包含XML的注释,因此您不必转义<和>,例如: 但是,可以识别CDATA部分,然后将其转换为HTML。例如: 或者它可以使用比CDATA更简单的语法。因为是可扩展的,所以可能有人添加了此功能。也许已经将它埋在里面的某处…有人知道吗? 问题答案: 您可以使用JavaDoc的标签:

  • 问题内容: 我想从数据库中获取一个对象(如果已存在)(基于提供的参数),或者如果不存在则创建它。 Django的(或)做到了。SQLAlchemy中是否有等效的快捷方式? 我目前正在像这样明确地写出来: 问题答案: 基本上就是这样做的方法,没有快捷方式可供使用的AFAIK。 你可以将其概括为:

  • 问题内容: SASS具有一个称为的功能,该功能允许选择器继承另一个选择器的属性,但不复制属性(如mixins)。 LESS是否也具有此功能? 问题答案: 是的,Less.js推出的V1.4.0。 LESS没有实现SASS和Stylus使用的at- rule()语法,而是实现了伪类语法,这为LESS的实现提供了灵活性,使其可以直接应用于选择器本身或在语句内部。因此,这两个都将起作用: 要么 此外,您

  • 问题内容: 目前,我正在开发中使用mysql 5.7,在生产中使用5.6。每次我在开发中使用group by运行查询时,都会收到类似“错误代码:1055。SELECT列表的表达式#1不在GROUP BY中”的错误。 这是查询。 为了解决这个问题,我使用5.7 ANY_VALUE中的mysql函数,但是主要问题是它在mysql 5.6中不可用 因此,如果我修复开发的sql语句,我将在生产中出现错误。

  • 有没有办法跳过使用PayPal REST Api的两步确认过程? 我已经成功地使用PayPalREST api实现了标准流程,它将用户带到PayPal网站,在那里他们输入他们的凭据,然后得到带有“继续”选项的订单摘要。“你快完成了。您将在xxxx商店确认付款”。 有没有一种方法可以跳过这一步?这样就不会让用户返回我的网站,在那里他们必须再次查看订单并选择“付款”,而是在PayPal上显示“立即付款

  • 问题内容: 是否可以使用并发时保持正确性来重写下面的代码? 即从java.util.concurrent是否有可以代替的东西?请注意,仅替换为 显然行不通 问题答案: Guava的CacheBuilder类使您可以轻松地做到这一点。 请注意,在您使用实例的情况下,这会将键相等语义更改为,而不是将其替换为无关紧要,但这是一个潜在的陷阱。