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

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

使用Maven復制文件的最佳實踐

使用Maven復制文件的最佳實踐

使用Maven復制文件的最佳實踐我有配置文件和各種文檔,我希望使用Maven 2將這些文件從dev環境復制到dev-server目錄。奇怪的是,Maven似乎并不擅長這項工作。其中一些備選方案:簡單使用a復制Maven中的任務<copy file="src/main/resources/config.properties" tofile="${project.server.config}/config.properties"/>使用Ant插件執行復制螞蟻的。構造一個類型的工件拉鏈,與POM的“主要”工件(通常為類型)一起使用。罐,然后拆包從存儲庫到目標目錄的工件。Maven-資源插件,如下所述。Maven組件插件-但這似乎需要大量的手動定義,當我想做簡單和“常規”的事情時。本頁甚至展示了如何構建一個插件來進行復制!Maven-上傳插件,如下所述。maven-依賴-插件帶著復制,見下文。所有這些似乎都是不必要的,沒有必要:Maven應該擅長于完成這些標準任務,而無需大驚小怪。有什么建議嗎?
查看完整描述

3 回答

?
智慧大石

TA貢獻1946條經驗 獲得超3個贊

不要回避安特恩插件。僅僅因為有些人傾向于認為Ant和Maven是對立的,他們就不是。如果需要執行一些不可避免的一次性定制,請使用復制任務:

<project>
  [...]  <build>
    <plugins>
      [...]      <plugin>
        <artifactId>maven-antrun-plugin</artifactId>
        <executions>
          <execution>
            <phase>deploy</phase>
            <configuration>
              <tasks>

                <!--
                  Place any Ant task here. You can add anything
                  you can add between <target> and </target> in a
                  build.xml.
                -->

              </tasks>
            </configuration>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
  [...]</project>

在回答這個問題時,我把重點放在你要求的細節上。如何復制文件?這個問題和變量名給我帶來了一個更大的問題,比如:“有更好的方法來處理服務器配置嗎?”使用Maven作為構建系統來生成可部署的工件,然后在單獨的模塊或其他地方執行這些定制。如果您共享更多的構建環境,可能會有更好的方法-有插件可以提供許多服務器。您能附加一個在服務器根目錄中解壓縮的程序集嗎?你用的是哪臺服務器?

再說一次,我肯定還有更好的辦法。


查看完整回答
反對 回復 2019-07-19
?
一只甜甜圈

TA貢獻1836條經驗 獲得超5個贊

<build>
    <plugins>
        ...        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <version>2.3</version>
        </plugin>
    </plugins>
    <resources>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include> **/*.properties</include>
            </includes>
        </resource>
    </resources>
    ...</build>


查看完整回答
反對 回復 2019-07-19
?
江戶川亂折騰

TA貢獻1851條經驗 獲得超5個贊

為了復制文件使用:

        <plugin>
            <artifactId>maven-resources-plugin</artifactId>
            <version>3.1.0</version>
            <executions>
                <execution>
                    <id>copy-resource-one</id>
                    <phase>install</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>

                    <configuration>
                        <outputDirectory>${basedir}/destination-folder</outputDirectory>
                        <resources>
                            <resource>
                                <directory>/source-folder</directory>
                                <includes>
                                    <include>file.jar</include>
                                </includes>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
           </executions>
        </plugin>

為了復制帶有子文件夾的文件夾,請使用下一個配置:

           <configuration>
              <outputDirectory>${basedir}/target-folder</outputDirectory>
              <resources>          
                <resource>
                  <directory>/source-folder</directory>
                  <filtering>true</filtering>
                </resource>
              </resources>              
            </configuration>


查看完整回答
反對 回復 2019-07-19
  • 3 回答
  • 0 關注
  • 614 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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