在我的Liferay模块中,我想使用Liferay的SomeConvenientClass
。
找出哪个模块提供该课程的推荐方法是什么?
这样我就可以快速将其添加到build.gradle
。
理想情况下应该:
到目前为止,我通过反复试验和从野外发现的build.gradle
文件进行复制/粘贴,但我正在寻找一种更可靠的方法。
我安装了Liferay,以及完全相同的Liferay版本的源代码,如果有帮助的话。
我尝试了mvnrepository,但它似乎没有返回任何内容,例如:https://mvnrepository.com/search?q=AuditMessageProcessor
答案 0 :(得分:2)
您是否尝试过http://search.maven.org/#advancedsearch?
例如: http://search.maven.org/#search|ga|1|c:"AuditMessageProcessor"
答案 1 :(得分:1)
这是一个选择而不是真实的选择,但这就是我通常做的事情:
考虑到这一点,通常在github上足以导航:portal->(kernel / impl / services / apps) - > app service / api / web ...
但是,当您在代码中度过一天时,这是一个自然的过程。
通常情况下,在线jar定位器有帮助,但通常我只依靠我的IDE。
在我的IDE上,在使用带有运行包的Gogo shell提取依赖关系之后,我已经完成了Spring依赖关系管理的设置。使用Gogo,您将找不到课程,但会列出模块和包。 (Gogo可能就是你正在寻找的btw,因为它能够列出版本号)
最重要的是,如果您需要列表作为正在运行的环境的图片,请使用Gogo。
关于主代码,就是不要相信它!在模块化和捆绑版本化方面,Liferay非常混乱(请阅读此处的依赖关系管理问题:https://www.e-systems.tech/blog/-/blogs/liferay-digital-experience-platform-review-7-0-ga4)。
对于第7步,您需要选择api版本和代码。 api更稳定。您可以对bnd文件的兼容性施加限制,这将导致系统发出警告。在您的环境中,您可以更早地捕获api更改,让我们说,您可以让gradle使用具有版本号的模块但是任何补丁(使用" +"唱歌),当您使用新缓存构建或者如果您更改gradle解析策略以更频繁地下载依赖项,如果构建中断,那么您将看到它。
有用的起点:https://dev.liferay.com/pt/develop/reference/-/knowledge_base/7-0/using-the-felix-gogo-shell
答案 2 :(得分:0)
这就是我的方式,它很慢且手动,所以不要犹豫推荐其他方法。
find . -name SomeConvenientClass.java
。如果找不到任何内容,您可以确定该课程不属于Liferay。src
文件夹级别,然后在其下方,例如,如果是modules/apps/collaboration/document-library/document-library-web/src/main/java/com/liferay/document/library/web/portlet/action/DLViewMVCRenderCommand.java
,则转到modules/apps/collaboration/document-library/document-library-web/
。bnd.bnd
文件,打开它。Export-Package
部分,则要么放弃(将Liferay的代码复制到您的模块中),要么使用一些dark tricks。如果您认为应该导出课程,您可以在https://issues.liferay.com/browse/LPS-70480解释您的案例,以供后代享用。Bundle-SymbolicName
。Bundle-Version
。com.liferay
,虽然有时会是com.liferay.portal
,但不知道该怎么说。