maven-assembly-plugin報(bào)紅無(wú)法加載報(bào)錯(cuò):Plugin?‘maven-assembly-plugin:‘?not?found
1.問(wèn)題描述
maven pom.xml中maven-assembly-plugin報(bào)紅,無(wú)法加載
2.pom文件build構(gòu)建部分詳解
<build> <!--當(dāng)項(xiàng)目沒有規(guī)定目標(biāo)(Maven2 叫做階段)時(shí)的默認(rèn)值--> <defaultGoal>install</defaultGoal> <!--build目標(biāo)文件的存放目錄,默認(rèn)在 ${basedir}/target 目錄--> <directory>${basedir}/target</directory> <finalName>${artifactId}-${version}</finalName> <filters> <filter>filters/filter1.properties</filter> </filters> <!--這個(gè)元素描述了項(xiàng)目相關(guān)的所有資源路徑列表,例如和項(xiàng)目相關(guān)的屬性文件,這些資源被包含在最終的打包文件里。--> <resources> <!--這個(gè)元素描述了項(xiàng)目相關(guān)或測(cè)試相關(guān)的所有資源路徑--> <resource> <!-- 描述了資源的目標(biāo)路徑。該路徑相對(duì)target/classes目錄(例如${project.build.outputDirectory})。舉個(gè)例 子,如果你想資源在特定的包里( org.apache.maven.message,你就必須該元素設(shè)置為org/apache/maven /messages。然而,如果你只是想把資源放到源碼目錄結(jié)構(gòu)里,就不需要該配置。--> <targetPath/> <!--是否使用參數(shù)值代替參數(shù)名。參數(shù)值取自properties元素或者文件里配置的屬性,文件在filters元素里列出。--> <filtering/> <!--描述存放資源的目錄,該路徑相對(duì)POM路徑--> <directory/> <!--包含的模式列表,例如**/*.xml.--> <includes/> <!--排除的模式列表,例如**/*.xml--> <excludes/> </resource> </resources> <!--這個(gè)元素描述了單元測(cè)試相關(guān)的所有資源路徑,例如和單元測(cè)試相關(guān)的屬性文件。--> <testResources> <!--這個(gè)元素描述了測(cè)試相關(guān)的所有資源路徑,參見build/resources/resource元素的說(shuō)明--> <testResource> <targetPath/> <filtering/> <directory/> <includes/> <excludes/> </testResource> </testResources> <!-- 在build時(shí),執(zhí)行的插件,比較有用的部分,如使用jdk 8.0編譯等等--> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-release-plugin</artifactId> <version>2.5.3</version> <configuration> <tagBase>${git.conn}</tagBase> <branchBase>${git.conn}</branchBase> <username>${git.username}</username> <password>${git.password}</password> </configuration> </plugin> ... </plugins> <!--子項(xiàng)目可以引用的默認(rèn)插件信息。該插件配置項(xiàng)直到被引用時(shí)才會(huì)被解析或綁定到生命周期。給定插件的任何本地配置都會(huì)覆蓋這里的配置--> <pluginManagement> <plugins> ... </plugins> </pluginManagement> </build> </project>
3.pom文件dependencies依賴部分詳解
依賴關(guān)系:
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.0</version> <type>jar</type> <scope>test</scope> <optional>true</optional> </dependency> ... </dependencies>
groupId, artifactId, version:描述了依賴的項(xiàng)目唯一標(biāo)志
可以通過(guò)以下方式進(jìn)行安裝:
使用以下的命令安裝:
mvn install:install-file –Dfile=non-maven-proj.jar –DgroupId=some.group –DartifactId=non-maven-proj –Dversion=1創(chuàng)建自己的庫(kù),并配置,使用deploy:deploy-file
設(shè)置此依賴范圍為system,定義一個(gè)系統(tǒng)路徑。不提倡。
- type:相應(yīng)的依賴產(chǎn)品包形式,如jar,war
- scope:用于限制相應(yīng)的依賴范圍,包括以下的幾種變量:
- compile :默認(rèn)范圍,用于編譯
- provided:類似于編譯,但支持你期待jdk或者容器提供,類似于classpath
- runtime:在執(zhí)行時(shí),需要使用
- test:用于test任務(wù)時(shí)使用
- system:需要外在提供相應(yīng)得元素。通過(guò)systemPath來(lái)取得
- systemPath: 僅用于范圍為system。提供相應(yīng)的路徑
- optional: 標(biāo)注可選,當(dāng)項(xiàng)目自身也是依賴時(shí)。用于連續(xù)依賴時(shí)使用獨(dú)占性外在告訴maven你只包括指定的項(xiàng)目,不包括相關(guān)的依賴。此因素主要用于解決版本沖突問(wèn)題
<dependencies> <dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-embedder</artifactId> <version>2.0</version> <exclusions> <exclusion> <groupId>org.apache.maven</groupId> <artifactId>maven-core</artifactId> </exclusion> </exclusions> </dependency>
表示項(xiàng)目maven-embedder需要項(xiàng)目maven-core,但我們不想引用maven-core
4.pom文件其他標(biāo)簽描述
- 繼承關(guān)系
- 一個(gè)強(qiáng)大的變化,maven帶來(lái)的是項(xiàng)目繼承。主要的設(shè)置:
- 定義父項(xiàng)目
<project> <modelVersion>4.0.0</modelVersion> <groupId>org.gene.demo</groupId> <artifactId>my-parent</artifactId> <version>2.0</version> <packaging>pom</packaging> </project>
packaging 類型,需要pom用于parent和合成多個(gè)項(xiàng)目。我們需要增加相應(yīng)的值給父pom,用于子項(xiàng)目繼承。主要的元素如下:
- 依賴型
- 開發(fā)者和合作者
- 插件列表
- 報(bào)表列表
- 插件執(zhí)行使用相應(yīng)的匹配ids
- 插件配置
- 子項(xiàng)目配置
<project> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.gene.demo</groupId> <artifactId>my-parent</artifactId> <version>2.0</version> <relativePath>../my-parent</relativePath> </parent> <artifactId>my-project</artifactId> </project>
relativePath可以不需要,但是用于指明parent的目錄,用于快速查詢。
dependencyManagement:
用于父項(xiàng)目配置共同的依賴關(guān)系,主要配置依賴包相同因素,如版本,scope。
合成(或者多個(gè)模塊)
一個(gè)項(xiàng)目有多個(gè)模塊,也叫做多重模塊,或者合成項(xiàng)目。
如下的定義:
<project> <modelVersion>4.0.0</modelVersion> <groupId>org.gene.demo</groupId> <artifactId>my-parent</artifactId> <version>2.0</version> <modules> <module>my-project1</module> <module>my-project2</module> </modules> </project>
5.解決方案
由于,build中插件無(wú)法自動(dòng)加載,在依賴中添加對(duì)應(yīng)依賴更新后即可成功加載。
<dependencies> <dependency> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version>3.0.0</version> </dependency> </dependencies>
到此這篇關(guān)于maven-assembly-plugin報(bào)紅無(wú)法加載報(bào)錯(cuò):Plugin ‘maven-assembly-plugin:‘ not found的文章就介紹到這了,更多相關(guān)maven-assembly-plugin報(bào)紅內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解Springboot如何通過(guò)注解實(shí)現(xiàn)接口防刷
本文主要為大家介紹一種極簡(jiǎn)潔、靈活通用接口防刷實(shí)現(xiàn)方式、通過(guò)在需要防刷的方法加上@Prevent?注解即可實(shí)現(xiàn)短信防刷,感興趣的可以了解一下2022-09-09Spring系統(tǒng)屬性及spring.properties配置文件示例詳解
spring中有一個(gè)SpringProperties類,來(lái)保存spring的系統(tǒng)屬性,本文結(jié)合實(shí)例代碼對(duì)Spring系統(tǒng)屬性及spring.properties配置文件相關(guān)知識(shí)給大家介紹的非常詳細(xì),需要的朋友參考下吧2023-07-07SpringBoot基于Mybatis攔截器和JSqlParser實(shí)現(xiàn)數(shù)據(jù)隔離
本文將介紹如何在 Spring Boot 項(xiàng)目中利用Mybatis的強(qiáng)大攔截器機(jī)制結(jié)合JSqlParser,一個(gè)功能豐富的 SQL 解析器,來(lái)輕松實(shí)現(xiàn)數(shù)據(jù)隔離的目標(biāo),本文根據(jù)示例展示如何根據(jù)當(dāng)前的運(yùn)行環(huán)境來(lái)實(shí)現(xiàn)數(shù)據(jù)隔離,需要的朋友可以參考下2024-04-04快速上手Mybatis-plus結(jié)構(gòu)構(gòu)建過(guò)程
這篇文章主要介紹了快速上手Mybatis-plus結(jié)構(gòu)構(gòu)建過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07