0

我正在处理来自Eugen Baeldung的“ OAuth 2.0 和 OpenID Connect ”以及:“ Spring Security and OpenID Connect ”,但是......我有一个问题。

如果我想“编译并启动”项目,我必须下载整个 Git Repository。相反,我一直在阅读“ git sparse ”,这将允许用户从存储库中下载某些特定部分并使用它们;避免完整下载。我一直在尝试使用这个存储库事实上:这个)但是......

如果我移动到文件夹:“ spring-security-modules/spring-security-oidc”并发出命令:“ mvn clean compile”,则会引发处理... PMD的错误!“ custom-pmd ”项目。

我已经看到,在编译这个模块(“ ”)之前spring-security-oidc,有一种“检查”(在父顶级 pom 中来确定该模块(“ custom-pmd”)是否已经编译并安装到用户的本地 Maven 中存储库。所以,我首先尝试“编译该子模块”,但检查也适用于之前!而且我无法编译“ custom-pmd”,因为有一个不允许的检查,因为“该模块尚未安装在存储库中! ”!

所以......有什么建议可以在不下载完整存储库的情况下从此存储库中编译“仅一个(子)模块”?

另一方面, " git sparse" 技术适用于这个其他存储库。使用 PowerShell:

Clear-Host
cd "[ROOT_DEVEL_FOLDER]"
Remove-Item -Force -path "devel" -recurse
git clone --depth 1 --no-checkout "https://github.com/Baeldung/spring-security-oauth.git" devel
cd devel
git sparse-checkout init
echo "" | out-file -Encoding Ascii ".git/info/sparse-checkout"
git sparse-checkout add "/pom.xml"
git sparse-checkout add "/oauth-authorization-server/*"
Get-Content ".git/info/sparse-checkout"
git checkout
cd "oauth-authorization-server"
mvn clean compile
cd "[ROOT_DEVEL_FOLDER]"

有没有人“ how-to ”从存储库中稀疏最小文件以编译给定的单个模块?

提前谢谢了!

4

0 回答 0