亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

有幾個問題想問,看了文檔也無果

有幾個問題想問,看了文檔也無果

慕萊塢森 2023-03-31 18:14:02
現在項目是 Ant 管理的,要將其改成 Maven,不需要自動化,可以接受完全重寫。但是有幾個問題稍微看了下文檔,不得門而入。求指點(并非求完整解決方案,只是想得到點提示)。自定義 build 邏輯,比如先把 jsp 編譯成 class 再打包成 jar,而不是直接發布 jsp 文件,由 tomcat 當場編譯。自定義目錄結構,因為是一個比較大的項目且很多模塊,但是共同一套配置文件目錄結構等。最簡單的私有 Maven repo 要如何搭建(期望是按照某個目錄結構向外發布 http/ftp 訪問即可,不需要 web 端去可視化管理)謝謝
查看完整描述

2 回答

?
紅糖糍粑

TA貢獻1815條經驗 獲得超6個贊

感覺你根本沒理解什么是maven。我使用中根本沒遇到你提到的疑問

jsp編譯class是什么鬼。沒看懂,JSP不需要什么編譯,這是容器的事情。就算是你編譯好了,你也脫離不了servlet容器,沒多大意義。

至于你說的,發布前要把js minify,請問用mvn怎么做?

這根本就不叫事兒。maven搭配NPM和最熱的vue前端框架整合在一起搞事,也不算啥事。Java開發的系統和工具,如果連這點擴展性都不到,還配叫Java么,Java還配穩坐編程語言老大的位置么。。你說的東西maven當然支持啦!,看示例配置:

<!-- yuicompressor -->  
            <plugin>  
                <groupId>net.alchim31.maven</groupId>  
                <artifactId>yuicompressor-maven-plugin</artifactId>  
                <version>1.3.0</version>  
                <executions>  
                    <execution>  
                        <phase>package</phase>  
                        <goals>  
                            <goal>compress</goal>  
                        </goals>  
                        <configuration>
                           <includes>  
                    <include>js/*.js</include>  
                    <include>css/*.css</include>  
                    <include>activity/**/*.css</include>  
                        </includes>
                            <excludes>  
                                <exclude>**/*.min.js</exclude>  
                                <exclude>**/*-min.js</exclude>  
                            </excludes>  
                            <encoding>utf8</encoding>  
                            <failOnWarning>false</failOnWarning>  
                            <nosuffix>true</nosuffix>  
                            <force>true</force>  
                            <removeIncluded>true</removeIncluded>  
                            <linebreakpos>-1</linebreakpos>  
                        </configuration>  
                    </execution>  
                </executions>  
            </plugin>

ant轉maven不是分分鐘的事情么,這種事情我干的不少,傳統的沒有任何包管理的全扔lib下的項目,200多個jar,我一天時間就能搞定。maven和某個號稱最好的語言的包管理不同,maven對代碼沒有任何侵入性,代碼一行改動都不需要,唯一需要的就是目錄結構做輕微調整(甚至不調整也可以)。不存在你說的什么“重寫”,真正的0侵入,反正就是不涉及任何代碼修改,只需要配置下maven的POM而已。

maven本來就支持自定義目錄結構啥的,只不過約定在先,你要不按你約定來也可以啊。

<build>  
    <sourceDirectory>${basedir}/src/main/java</sourceDirectory>  
    <scriptSourceDirectory>${basedir}/src/main/scripts</scriptSourceDirectory>  
    <testSourceDirectory>${basedir}/src/test/java</testSourceDirectory>  
    <outputDirectory>${basedir}/target/classes</outputDirectory>  
    <testOutputDirectory>${basedir}/target/test-classes</testOutputDirectory>  
    ...  
  </build>

如果系統中有很多jar已經招不到maven坐標了,自己給它安一個坐標,上傳到私服就能搞定。


查看完整回答
反對 回復 2023-04-03
?
一只斗牛犬

TA貢獻1784條經驗 獲得超2個贊

maven的哲學是Convention over Configuration ,建議還是按照maven的標準來,不然還不如就繼續用ant,這樣的成本還低一些

查看完整回答
反對 回復 2023-04-03
  • 2 回答
  • 0 關注
  • 208 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號