91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 開發技術 > 
  • maven打包時候修改包名稱帶上git版本號和打包時間的方法是什么

maven打包時候修改包名稱帶上git版本號和打包時間的方法是什么

發布時間:2023-04-07 17:45:09 來源:億速云 閱讀:340 作者:iii 欄目:開發技術

本文小編為大家詳細介紹“maven打包時候修改包名稱帶上git版本號和打包時間的方法是什么”,內容詳細,步驟清晰,細節處理妥當,希望這篇“maven打包時候修改包名稱帶上git版本號和打包時間的方法是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

maven打包時候修改包名稱帶上git版本號和打包時間

使用 maven 插件 git-commit-id-plugin 可以獲取項目的git信息,然后,使用這個信息,修改打包的名稱,使其帶上git版本號以及打包時間。

	<build>
        <finalName>${artifactId}-${git.commit.id.abbrev}-${git.build.time}</finalName>
        <plugins>
            <plugin>
                <groupId>pl.project13.maven</groupId>
                <artifactId>git-commit-id-plugin</artifactId>
                <version>2.1.5</version>
                <executions>
                    <execution>
                        <id>get-the-git-infos</id>
                        <!-- 默認綁定階段initialize -->
                        <phase>initialize</phase>
                        <goals>
                            <goal>revision</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <!--日期格式;默認值:dd.MM.yyyy '@' HH:mm:ss z;-->
                    <dateFormat>yyyy-MM-dd_HH-mm-ss</dateFormat>
                    <!--,構建過程中,是否打印詳細信息;默認值:false;-->
                    <verbose>true</verbose>
                    <!-- ".git"文件路徑;默認值:${project.basedir}/.git; ${project.basedir}:項目根目錄,即包含pom.xml文件的目錄-->
                    <dotGitDirectory>${project.basedir}/../../../.git</dotGitDirectory>
                    <!--若項目打包類型為pom,是否取消構建;默認值:true;-->
                    <skipPoms>false</skipPoms>
                    <!--是否生成"git.properties"文件;默認值:false;-->
                    <generateGitPropertiesFile>true</generateGitPropertiesFile>
                    <!--指定"git.properties"文件的存放路徑(相對于${project.basedir}的一個路徑);-->
                    <generateGitPropertiesFilename>/src/main/resources/git.properties</generateGitPropertiesFilename>
                    <!--".git"文件夾未找到時,構建是否失敗;若設置true,則構建失敗;若設置false,則跳過執行該目標;默認值:true;-->
                    <failOnNoGitDirectory>true</failOnNoGitDirectory>
 
                    <!--git描述配置,可選;由JGit提供實現;-->
                    <gitDescribe>
                        <!--是否生成描述屬性-->
                        <skip>false</skip>
                        <!--提交操作未發現tag時,僅打印提交操作ID,-->
                        <always>false</always>
                        <!--提交操作ID顯式字符長度,最大值為:40;默認值:7; 0代表特殊意義;后面有解釋;-->
                        <abbrev>7</abbrev>
                        <!--構建觸發時,代碼有修改時(即"dirty state"),添加指定后綴;默認值:"";-->
                        <dirty>-dirty</dirty>
                        <!--always print using the "tag-commits_from_tag-g_commit_id-maybe_dirty" format, even if "on" a tag.
                            The distance will always be 0 if you're "on" the tag.  -->
                        <forceLongFormat>false</forceLongFormat>
                    </gitDescribe>
                </configuration>
            </plugin>
        </plugins>
    </build>

實際運行結果:

maven打包時候修改包名稱帶上git版本號和打包時間的方法是什么

git.properties文件內容

#Generated by Git-Commit-Id-Plugin
#Fri Nov 12 15:06:14 CST 2021
git.commit.id.abbrev=ff60f80
git.commit.user.email=xxx@163.com
git.commit.message.full=git提交說明
git.commit.id=ff60f8091627e53891fc15bdccad93115f8623c9
git.commit.message.short=簡要說明
git.commit.user.name=abc
git.build.user.name=efg
git.commit.id.describe=xxxx
git.build.user.email=xxx@163.com
git.branch=xxx-dev
git.commit.time=2011-11-09_14-00-40
git.build.time=2011-11-12_15-06-14
git.remote.origin.url=http\://1.1.1.1\:1/group/xxx.git

maven打包日常總結

1、 將第三方依賴性jar包中的文件打包入jar中,打包時修改引入jar包的包名,防止包沖突

 <!--將第三方依賴性jar包中的文件打包入jar中-->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <!-- 打包失敗可能是版本太低,提高版本 -->
                <version>3.1.0</version>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                        <configuration>
                            <!-- 打包時修改引入jar包的包名,防止包沖突 -->
                            <relocations>
                                <relocation>
                                    <pattern>org.apache.http</pattern>
                                    <shadedPattern>shaded.org.apache.http</shadedPattern>
                                    <!--<excludes>-->
                                    <!--<exclude>org.codehaus.plexus.util.xml.Xpp3Dom</exclude>-->
                                    <!--<exclude>org.codehaus.plexus.util.xml.pull.*</exclude>-->
                                    <!--</excludes>-->
                                </relocation>
                            </relocations>
 
                            <filters>
                                <filter>
                                    <artifact>*:*</artifact>
                                    <excludes>
                                        <exclude>META-INF/*.SF</exclude>
                                        <exclude>META-INF/*.DSA</exclude>
                                        <exclude>META-INF/*.RSA</exclude>
                                    </excludes>
                                </filter>
                            </filters>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

2、阻止第三方jar包被打入執行包

        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-client</artifactId>
            <version>2.7.2</version>
            <!-- 阻止第三方jar包被打入執行包 -->
            <scope>provided</scope>
        </dependency>

3、打包時不包含該包下的部分子包

       <dependency>
            <groupId>org.elasticsearch.client</groupId>
            <artifactId>elasticsearch-rest-high-level-client</artifactId>
            <version>6.3.2</version>
            <!-- 不包含org.apache.httpcomponents包 -->
            <exclusions>
                <exclusion>
                <groupId>org.apache.httpcomponents</groupId>
                <artifactId>httpcore</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

讀到這里,這篇“maven打包時候修改包名稱帶上git版本號和打包時間的方法是什么”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

靖州| 甘谷县| 常宁市| 洛阳市| 潞西市| 林州市| 天全县| 大荔县| 电白县| 韶山市| 革吉县| 灌云县| 张家川| 曲麻莱县| 大连市| 武胜县| 高平市| 元阳县| 延长县| 浦江县| 西平县| 阿坝县| 乡城县| 湖北省| 朝阳市| 富阳市| 陈巴尔虎旗| 来安县| 霍山县| 博湖县| 从化市| 连城县| 张家川| 石家庄市| 乌海市| 泾川县| 广安市| 阿城市| 子洲县| 高邮市| 沂源县|