<dependency>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
<version>2.9.1</version>
</dependency><plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>我一直搞不清楚這倆有啥區別,尤其是plugin,誰給我講講,謝謝了
1 回答

慕尼黑5688855
TA貢獻1848條經驗 獲得超2個贊
直白點來說:
A. dependency引入的東西是你代碼編譯/運行時所需要的東西,項目打包后這些東西基本都在。
如:JSON工具包GSON(com.google.code.gson),不僅開發時要用,項目運行時也要用,就需要打包進項目中;
而像 javax.servlet-api 這種由容器實現的接口,運行時調用的是容器的具體實現,開發時它的引入范圍應該是編譯(<scope>provided</scope>),不會被打包進項目。
B. plugin引入的東西,如它的字面意思一樣,是插件,作為開發/編譯/打包時的一種輔助工具,一般不會打包進項目中。
如:使用 maven-source-plugin 插件將API包的源碼一起打包,方便發布至Maven倉庫,而這個插件不會在打包后的項目中出現。
添加回答
舉報
0/150
提交
取消