日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SAP Hybris使用recipe进行安装时,是如何执行ant命令的?

發布時間:2023/12/19 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SAP Hybris使用recipe进行安装时,是如何执行ant命令的? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

打開Hybris安裝文件夾下的recipes,隨便打開一個recipe的build.gradle文件,發現使用了installer-platform-plugin和installer-addon-plugin這兩個plugin. Groovy setup任務的邏輯,也就是使用這兩個plugin里的實現,根據config實例化platform對象,然后調用其setup方法和executeAntTarget方法。

這兩個方法的實現源代碼在哪里?這就是本文所要描述的內容。

去docs文件夾里可以找到插件的實現源代碼:

到源代碼里根據executeAntTarget進行搜索:

在AbstractPlatform.groovy里找到了executeAntTarget的實現邏輯,發現其delegate到了成員屬性antExecutor里:

這個antExecutor的類型是HybrisAntExecutor:

找到HybrisAntExcutor,發現其只不過是調用類HybrisPluginUtils的靜態方法:

靜態方法之一:runProcess

實現核心:

private static void runExternalProcess(String workDir, String[] command, Closure closure) {def builder = new DefaultExecHandleBuilder()builder.setWorkingDir((new File(workDir)).absolutePath)builder.setCommandLine(command)if (closure) closure.call(builder)def handle = builder.build()handle.start()def result = handle.waitForFinish()if (result.getExitValue() != 0) {throw new IllegalStateException("external process returned non-zero exit code, command: ${command}")}}

運行外部程序的方法,使用的是Groovy SDK提供的import org.gradle.process.internal.DefaultExecHandleBuilder.

靜態方法之二:isWindowsOs

import org.apache.tools.ant.taskdefs.condition.Os

HybrisAntExcutor方法之一:getWindowsAntCmd

private String[] getWindowsAntCmd(String antArgs, String antOpts) {def antPreCommand = "set \"ANT_OPTS=${antOpts}\""antPreCommand += " & set \"PLATFORM_HOME=${platformHome}\""antPreCommand += " & set \"ANT_HOME=${platformHome}\\apache-ant-1.9.1\""antPreCommand += " & set \"PATH=${platformHome}\\apache-ant-1.9.1\\bin;%PATH%\""String antCommand = "${antPreCommand} & ant ${antArgs}"['cmd', '/c', antCommand]}

要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":

總結

以上是生活随笔為你收集整理的SAP Hybris使用recipe进行安装时,是如何执行ant命令的?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日本三级中国三级99人妇网站 | 香蕉视频污在线观看 | 亚洲va久久久噜噜噜无码久久 | www.久久婷婷| www香蕉| 亚洲激情图片区 | 中文字幕在线2018 | 黄色大片视频网站 | 日韩激情视频一区二区 | 动漫美女被吸乳奶动漫视频 | 国产又粗又黄 | 日韩成人无码影院 | 特黄视频在线观看 | 伊人久久五月天 | 亚洲av毛片一区二二区三三区 | 蜜桃av一区 | 精品国产99| 大奶一区二区 | 亚洲成a人片77777kkkk | 五月天综合在线 | 日本sm调教—视频|vk | 变态另类ts人妖一区二区 | 黄色av网站免费 | 国产人妻一区二区三区四区五区六 | 黄色一级视频片 | 毛片内射久久久一区 | 欧美日韩四区 | 这里只有精品在线播放 | 国产亚洲视频在线 | 成人网站免费观看入口 | 日本少妇吞精囗交视频 | 中文字幕啪啪 | 97久久国产亚洲精品超碰热 | 伊人99 | 日本精品视频一区 | 91av看片 | 日韩av线观看 | 欧美日韩在线免费视频 | 免费一级片在线观看 | 奇米影视盒 | 国产113页 | 原创av| 狼人精品一区二区三区在线 | 69性视频| 无码一区二区三区视频 | 中文字幕视频一区二区 | 19禁大尺度做爰无遮挡电影 | 星空大象在线观看免费播放 | 色婷婷av一区二区三区四区 | 一色屋免费视频 | 亚洲射射 | 国产综合精品一区二区三区 | 国产xxxx视频 | 国产欧美一区二区三区在线老狼 | 2020国产精品视频 | 一级片网址 | 午夜精品久久久久久久久久 | 黄色免费视频观看 | 成人动漫视频在线观看 | 日本不卡一区二区三区视频 | 国产性―交一乱―色―情人 | 国产一区二区视频在线播放 | 中文黄色片 | 一级全黄男女免费大片 | 国产一区二区三区四区 | 日韩一区二区三区视频 | 91高跟黑色丝袜呻吟动态图 | 日本午夜大片 | 亚洲午夜精品一区二区三区他趣 | 国产精品麻豆视频 | 日韩国产欧美在线视频 | 国产成人精品一区二区三区网站观看 | 极品美女开粉嫩精品 | 国产伦一区二区 | 九九久久精品 | 亚洲精品无码久久久久久久 | 超碰cc| 538国产精品一区二区 | 黄色草逼网站 | 精品自拍视频 | 天堂av最新网址 | 岛国av电影在线观看 | 国产精品无圣光 | 欧美大片黄色 | 国产人人射 | 九九涩| 日韩狠狠操 | 亚洲一区二区三区在线看 | 国产在视频线精品视频 | 久久国产精品久久精品国产 | 玖玖爱精品 | 亚洲福利视频一区二区 | 国产a级网站 | www性| 99久久影院 | av大全在线播放 | 日日骚影院 | 亚洲无吗av | 国产成人久久77777精品 |