版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Maven入門指南主講人:陳雄華目錄Maven簡(jiǎn)介Maven基礎(chǔ)概念Maven私服依賴,聚合,繼承常用插件和自動(dòng)化部署IDEA下Maven項(xiàng)目開發(fā)Maven高級(jí)應(yīng)用目錄Maven簡(jiǎn)介Maven基礎(chǔ)概念Maven私服依賴,聚合,繼承常用插件和自動(dòng)化部署IDEA下Maven項(xiàng)目開發(fā)Maven高級(jí)應(yīng)用傳統(tǒng)開發(fā)回顧收集依賴構(gòu)件到CLASSPATH編寫源代碼、配置信息JavaC編譯單元測(cè)試產(chǎn)品打包、發(fā)行代碼共享、儲(chǔ)存,以及版本控制經(jīng)常遇到哪些問題?嚴(yán)重依賴IDE?Maven介紹清理編譯測(cè)試報(bào)告打包部署答案1:它是一個(gè)構(gòu)建工具*高度自動(dòng)化*跨平臺(tái)*豐富的可重用組件*標(biāo)準(zhǔn)化>mvnclean>mvncompile>mvnpackageMaven介紹
答案2:它是一個(gè)依賴管理工具springlog4jhibernate...pom.xmlProjectA自定義插件第三方插件Maven介紹答案3:它是一個(gè)平臺(tái)擁有無限可能的平臺(tái)Maven如可集成jetty插件,通過Maven啟動(dòng)Jetty服務(wù)器,如可集成腳本運(yùn)行插件,在構(gòu)建時(shí)自動(dòng)壓縮JavaScript及CSS,或開發(fā)自定義的插件,自動(dòng)解析自定義的格式化CSS文件生成圖標(biāo)庫meta.xml等,....Maven介紹Maven版本Maven2完成了對(duì)Maven1的重寫。重寫的首要目的是要提供了強(qiáng)大的Java構(gòu)建和包含API的項(xiàng)目,允許Maven被植入任何地方,尤其是高級(jí)別的產(chǎn)品如IDEs、質(zhì)量工具、報(bào)告工具等這些。Maven2構(gòu)建生命周期的概念正式化,其比Maven更易擴(kuò)展;Maven3在2.x基礎(chǔ)上大幅提升性能??梢宰詣?dòng)指定父版本,并行生成,更好的完整性報(bào)告、多語言生成、更好地支持M2Eclipse…我們要使用Maven3Maven安裝下載安裝包地址:/download.html當(dāng)前版本為3.0Windows系統(tǒng)下安裝:首先需要確認(rèn)系統(tǒng)中裝有JDK(版本1.5+);將壓縮包解壓到本地磁盤某目錄中,該目錄則稱為安裝目錄。例如D:\opensource\apache-maven-3.0目錄結(jié)構(gòu):binMaven的運(yùn)行腳本bootMaven自己的類裝載器conf該目錄下包含了全局行為定制文件setting.xmllibMaven運(yùn)行時(shí)所需的類庫...Maven安裝配置環(huán)境變量M2_HOME=安裝目錄在PATH系統(tǒng)變量中增加%M2_HOME%\binMAVEN_OPTS=-Xms128m-Xmx1024m(非必要項(xiàng),可防止內(nèi)存溢出)檢查安裝正確性在命令行提示符下執(zhí)行:mvn–v能看到Maven和JDK的版本號(hào)為安裝正確小試Maven命令mvnhelp:system該命令將會(huì)下載help插件并運(yùn)行它,且打印出Java系統(tǒng)屬性和環(huán)境變量目錄Maven簡(jiǎn)介Maven基礎(chǔ)概念Maven私服依賴,聚合,繼承常用插件和自動(dòng)化部署IDEA下Maven項(xiàng)目開發(fā)Maven高級(jí)應(yīng)用Maven基礎(chǔ)概念插件倉(cāng)庫構(gòu)件生命周期構(gòu)件構(gòu)件即Artifact:artifact是工程將要產(chǎn)生或需要使用的文件,它可以是jar文件,源文件,二進(jìn)制文件,war文件,甚至是pom文件。每個(gè)artifact都由groupId,artifactId及version組合的標(biāo)識(shí)符唯一識(shí)別。需要被使用(依賴)的artifact都要放在倉(cāng)庫(見Repository)中,否則Maven無法找到(識(shí)別)它們。pom.xml:<dependency>
<groupId>mons</groupId>
<artifactId>commons-lang3</artifactId><version>3.2.1</version></dependency>artifactRepository插件構(gòu)件即Plug-in:Maven是由插件組織的,它的每一個(gè)功能都是由插件提供的。插件提供goal(類似于Ant中的target),并根據(jù)在POM中找到的元數(shù)據(jù)去完成工作。主要的Maven插件要是由Java寫成的,但它也支持用Beanshell或Ant腳本寫成的插件。artifactRepository
<build>
<plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.1</version>
</plugin></plugins>
</build>構(gòu)件版本號(hào)演進(jìn)1.0-SNAPSHOTtags1.1-SNAPSHOT1.0trunk1.2-SNAPSHOT1.1branches1.3-SNAPSHOT1.1.1-SNAPSHOT1.1.1合并1.2發(fā)布版本號(hào)約定:<主版本>.<次版本>.<增量版本>-<里程碑版本>一般來說,主版本和次版本都會(huì)聲明,但增量版本和里程碑版本則不一定會(huì)用。生命周期默認(rèn)生命周期Maven倉(cāng)庫Maven倉(cāng)庫本地倉(cāng)庫遠(yuǎn)程倉(cāng)庫中央倉(cāng)庫私服其他公共庫倉(cāng)庫分類倉(cāng)庫即Repository:存儲(chǔ)構(gòu)件或插件的地方,按大類劃分為本地倉(cāng)庫及遠(yuǎn)程倉(cāng)庫,遠(yuǎn)程倉(cāng)庫一般由Maven服務(wù)器提供倉(cāng)庫管理功能。倉(cāng)庫協(xié)作圖本地倉(cāng)庫目錄Maven簡(jiǎn)介Maven基礎(chǔ)概念Maven私服依賴,聚合,繼承常用插件和自動(dòng)化部署IDEA下Maven項(xiàng)目開發(fā)Maven高級(jí)應(yīng)用安裝Nexus私服部署安裝地址:https:///download-oss-sonatypeNexus私服倉(cāng)庫宿主庫hostReleases:本地已發(fā)布構(gòu)件,插件的版本Snapshots:本地發(fā)布的快照版本。3rdparty:第三方構(gòu)件,如Oracle,db2等構(gòu)件代理庫proxy第三方的公共庫,如central,Jboss庫,將遠(yuǎn)程的倉(cāng)庫緩存在本地,加快構(gòu)件的下載。庫組grouppublic:可以將多個(gè)庫組織在一起對(duì)外提供統(tǒng)一的地址引用。Nexus私服倉(cāng)庫publicreleasessnapshots3rdparty代理庫...Maven私服遠(yuǎn)程倉(cāng)庫<repository>
0:8081/nexus/content/groups/public/</repository>setting.xml本地環(huán)境代理......Nexus私服主要配置安裝好NexusMaven私服后,通過admin/admin123登錄后臺(tái)。
1.Release本機(jī)倉(cāng)庫需要將redeploy設(shè)置有allow,以便允許Host的Release可以允許重新發(fā)布;
2.刪除ApacheSnapshots代理庫,新增ApacheReleases,遠(yuǎn)程地址為:/content/repositories/releases/3.PublicRepositories將可用的Reposity要選擇上,并排好順序。Maven倉(cāng)庫配置:setting.xml$user.home/.m2/setting.xml為用戶范圍的配置文件(優(yōu)先級(jí)高)$M2_HOME/conf/setting.xml(優(yōu)先級(jí)低)為全局范圍的配置文件,修改后將影響本機(jī)所有用戶的配置建議:只修改用戶級(jí)別的配置,既不影響其它用戶,也不影響后期升級(jí)。配置介紹localRepository:
自定義本地庫路徑,默認(rèn)在$user.home/.m2中interactiveMode:offline:是否每次編譯都去查找遠(yuǎn)程中心庫,默認(rèn)為falsepluginGroups:插件組,例如org.mortbay.jettyproxies:通過代理訪問外部庫servers:Maven服務(wù)的認(rèn)證信息,mirrors:鏡像庫,可以指定內(nèi)部中心庫profiles:個(gè)性配置,需要在Activation標(biāo)簽中激活activeProfiles:表示激活的profilesetting.xml:遠(yuǎn)程倉(cāng)庫配置使用私服的public構(gòu)件庫使用私服的public插件庫遠(yuǎn)程倉(cāng)庫配置,指向私服的public組倉(cāng)庫:setting.xml:本地倉(cāng)庫配置<settings><localRepository>E:\m2\repository</localRepository>
....</settings>默認(rèn)情況下:本地倉(cāng)庫位于<用戶目錄>/.m2/repository,可通過setting.xml的<localRepository/>指向其它目錄。setting.xml:配置私服的用戶密碼[1]
首先,在setting.xml中添加nexus服務(wù)器賬號(hào)。如何在Nexus服務(wù)器創(chuàng)建賬號(hào)請(qǐng)參考官方說明<servers><server><!—正式發(fā)布倉(cāng)庫賬號(hào)--> <id>releases</id> <username>deployment</username> <password>123456</password></server><server><!—快照版布行倉(cāng)庫賬號(hào)--> <id>Snapshots</id> <username>deployment</username> <password>123456</password></server></servers>使用admin/admin123登錄Maven私服Nexus的后臺(tái),在:secutiry->users下維護(hù)Nexus的用戶及密碼,這兒使用deployment用戶,密碼必須和服務(wù)端設(shè)置一致。將項(xiàng)目發(fā)行到公司內(nèi)部倉(cāng)庫。在pom.xml中添加:<distributionManagement><repository><id>releases</id><!—發(fā)布庫:此處ID以上頁setting.xml中的<server>的<id>一致--><name>InternalReleases</name><url>http://192.168.10:8081/nexus/content/repositories/releases/</url></repository><snapshotRepository><id>Snapshots</id><!—快照庫:此處ID以上頁setting.xml中的<server>的<id>一致--><name>InternalSnapshots</name>
<url>http://192.168.10:8081/nexus/content/repositories/snapshots/</url></snapshotRepository></distributionManagement>在setting.xml中指定releases庫及snapshots庫的的訪問用戶及密碼,在項(xiàng)目的pom.xml中則指定庫的地址,兩者通過id綁定。在項(xiàng)目處,通過命令:mvndeploy即可發(fā)布構(gòu)件了。setting.xml:向遠(yuǎn)程倉(cāng)庫發(fā)布構(gòu)件[2]
使用私服作為遠(yuǎn)程倉(cāng)庫的鏡像,能大大加快下載效率:<mirrors><mirror>
<id>nexus</id> <mirrorOf>*</mirrorOf>
<http://192.168.10:8081/nexus/content/groups/public/</url></mirror></mirrors>setting.xml:向遠(yuǎn)程倉(cāng)庫發(fā)布構(gòu)件[2]在一些開源項(xiàng)目的pom.xml中直接顯式通過<repository>指定了遠(yuǎn)程倉(cāng)庫。通過setting.xml的<mirror>可以使用私服作為遠(yuǎn)程倉(cāng)庫的鏡像,避免從遠(yuǎn)程倉(cāng)庫下載構(gòu)件,提高速度。
所以mirrorOf主要用于開源項(xiàng)目,對(duì)自開發(fā)項(xiàng)目一般是沒有什么用的。setting.xml:方案啟用<activeProfiles><activeProfile>development</activeProfile><activeProfile>public-snapshots</activeProfile></activeProfiles>在setting.xml中可以配置多套方案,可通過<activeProfiles>指定具體要啟用哪套方案。IDEA中也可選擇具體啟用哪套方案公司內(nèi)部倉(cāng)庫使用總結(jié)重點(diǎn)1:向內(nèi)部倉(cāng)庫發(fā)布構(gòu)件使用deploy命令發(fā)布,但確保服務(wù)器地址和認(rèn)證信息(賬號(hào)和密碼)。即pom.xml中配置的<distributionManagement>標(biāo)簽與setting.xml配置的<server>標(biāo)簽id一致。如果要發(fā)布第三方構(gòu)件,可以進(jìn)入Nexus服務(wù)器管理界面添加,也可以使用命令,具體參考官方文檔。重點(diǎn)2:設(shè)置鏡像,使得內(nèi)部開發(fā)人員只一個(gè)出入口在setting.xml中配置<mirrors>、<profile>、<activeProfiles>標(biāo)簽?zāi)夸汳aven簡(jiǎn)介Maven基礎(chǔ)概念Maven私服依賴/繼承/聚合常用插件和自動(dòng)化部署IDEA下Maven項(xiàng)目開發(fā)Maven常見問題pom.xml簡(jiǎn)介<dependencies>:構(gòu)件依賴<parent>:模型繼承<dependencyManagement>:依賴管理<reporting>:創(chuàng)建報(bào)告<build>:構(gòu)建<repositories>:引用第三方倉(cāng)庫<licenses>:許可是Maven項(xiàng)目的核心配置文件,位于每個(gè)工程的根目錄,描述Maven所有元數(shù)據(jù)的文件。pom.xml:構(gòu)件依賴依賴配置<dependency><groupId>……</groupId><artifactId>……</artifactId><version>……</version><classifier>……</classifier><scope>……</scope><type>……</type><systemPath>……</systemPath><optional>……</optional><exclusions></exclusions></dependency>依賴配置詳細(xì)介紹groupId、artifactId、version是依賴的基本坐標(biāo),缺一不可,其它兩個(gè)坐標(biāo)元素不指定時(shí)將采用默認(rèn)值type:依賴的類型對(duì)應(yīng)坐標(biāo)packaging,默認(rèn)為jar,可選為pom,war,earoptional:標(biāo)記依賴是否可選如一個(gè)項(xiàng)目同時(shí)支持mysql,oracle,但在真正使用時(shí)只會(huì)選擇一種,此時(shí)可以設(shè)置為true,默認(rèn)為false。exclusions:排除傳遞依賴依賴配置詳細(xì)介紹scope:依賴范圍compile:編譯范圍,是默認(rèn)scope,在classpath中存在provided:已提供范圍,比如容器提供ServletAPIruntime:運(yùn)行時(shí)范圍,編譯不需要,運(yùn)行時(shí)需要,如數(shù)據(jù)庫驅(qū)動(dòng)程序test:測(cè)試范圍,單元測(cè)試環(huán)境需要system:系統(tǒng)范圍,自定義構(gòu)件,需通過systemPath指定所在的本地路徑import:導(dǎo)入依賴依賴傳遞art1art2art3傳遞依賴關(guān)系表第2直接依賴??第1直接依賴依賴分析A->B->C->X(1.0)A->D->X(2.0)X是A的傳遞依賴調(diào)解原則:第一原則:路徑近者優(yōu)先原則x2.0傳遞給A最近第二原則:第一聲明者優(yōu)先原則當(dāng)路徑相等時(shí),則由POM聲明的依賴順序決定mvndependency:list
//打印出依賴列表mvndependency:tree
//打印出依賴樹mvndependency:analyze//分析當(dāng)前依賴依賴排除<dependency><groupId>org.unitils</groupId><artifactId>unitils-core</artifactId><version>${unitils.version}</version><exclusions>
<exclusion><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId></exclusion><exclusion><groupId>commons-lang</groupId><artifactId>commons-lang</artifactId></exclusion>
</exclusions></dependency>art1art2artX11artX12artX13exclusionexclusion模塊繼承:語法通過子項(xiàng)目來繼承,可以共享父項(xiàng)目定義的所有的值。比如自定義構(gòu)建信息,版本仲裁,父模塊的packaging必須是pom類型的,也不需要src/main/java了特點(diǎn):1.單親父節(jié)點(diǎn)2.允許覆蓋<modelVersion>4.0.0</modelVersion><parent><groupId>com.test</groupId><artifactId>sample-parent</artifactId><version>1.0.0</version><relativePath>
../sample-parent
</relativePath></parent><artifactId>sample-module1</artifactId>sample-parentsample-module1模塊繼承:父模塊統(tǒng)一屬性定義構(gòu)件及插件版本管理發(fā)布管理設(shè)置團(tuán)隊(duì)信息...父模塊包括的信息模塊繼承:父模塊<properties>:定義變量信息,子模塊可以使用;<dependencyManagement>:將項(xiàng)目中需要用到的構(gòu)件統(tǒng)一在此管理好,包括構(gòu)件包、構(gòu)件名及版本,而子模塊引用即可,統(tǒng)一構(gòu)件的版本管理,方便維護(hù);<pluginManagement>:將項(xiàng)目中需要用到的共用插件統(tǒng)一在此管理,作用同上;<distributionManagement>:發(fā)布管理,所有子模塊復(fù)用之。對(duì)照sample-parent及其子模塊進(jìn)行學(xué)習(xí)。多模塊開發(fā):組合組合:將多個(gè)模塊組合在一起,packaging設(shè)置為pom,也無需src/main/java目錄;使用:一般情況下,在項(xiàng)目根目錄下創(chuàng)建組合模塊,將所有子模塊聚合在一起。<name>myproject-all</name><modules> <module>myproject-dao</module> <module>myproject-biz</module> <module>myproject-mvc</module></modules>參見sample-project項(xiàng)目的根pom.xml經(jīng)典多模塊結(jié)構(gòu)1.父模塊2.子模塊3.聚合模塊4.輔助模塊1.父模塊:管理構(gòu)件/插件版本,發(fā)布管理等;2.子模塊:項(xiàng)目功能模塊;3.聚合模塊:將項(xiàng)目的所有模塊組合在一起;4.輔助模塊:項(xiàng)目功能變更、數(shù)據(jù)庫變更,數(shù)據(jù)腳本、執(zhí)行腳本等。目錄Maven簡(jiǎn)介Maven基礎(chǔ)概念Maven私服依賴,聚合,繼承常用插件和自動(dòng)化部署IDEA下Maven項(xiàng)目開發(fā)Maven高級(jí)應(yīng)用插件綁定pile......maven-compiler-plugincompile...內(nèi)置插件(1)生命周期階段(phase)插件目標(biāo)(goal)pre-cleancleanmaven-clean-plugin:cleanpost-clean表一:clean生命周期內(nèi)置插件綁定表三:site生命周期內(nèi)置插件綁定生命周期階段(phase)插件目標(biāo)(goal)pre-sitesitemaven-site-plugin:sitepost-sitesite-deploymaven-site-plugin:deploy內(nèi)置插件(2)生命周期階段(phase)插件目標(biāo)(goal)process-resourcesmaven-resources-plugin:resourcescompilemaven-complier-plugin:compileprocess-test-resourcesmaven-resources-plugin:testResourcestest-compilemaven-compiler-plugin:testCompiletestmaven-surefire-plugin:testpackagemaven-jar-plugin:jarinstallmaven-install-plugin:installdeploymaven-deploy-plugin:deploy表三:default生命周期內(nèi)置插件綁定顯式指定生命周期的插件執(zhí)行目標(biāo)<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<includeEmptyDirs>false</includeEmptyDirs>
</configuration>
<executions>
<execution>
<id>copy1</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<includeEmptyDirs>true</includeEmptyDirs>
<outputDirectory>${basedir}/target/classes/META-INF/web-resources/foundation/
</outputDirectory>
<resources>
<resource>
<directory>src/main/webapp/foundation/</directory>
<includes>
<include>**/*.*</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>插件配置<build> <plugins> <plugin> <!--Maven一切的插件工作都是居于插件執(zhí)行的,常用默認(rèn)的插件有:編譯、打包、安裝--> </plugin> </plugins></build>PS:一般構(gòu)建時(shí)加上必要的插件就可以,不需要更多的配置,因?yàn)樗袃?nèi)部約定。如果需要改變配置,例如源代碼文件夾、編譯打包結(jié)果文件夾等等,都是可以改變的。常用插件Maven編譯插件<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.6</source> <target>1.6</target> <encoding>UTF-8</encoding> </configuration></plugin>命令:
mvncompilePS:該插件是默認(rèn)插件,如果沒有配置,Maven將以1.3級(jí)別來編譯JAR包生成插件<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <mainClass><!—入口程序--> org.sonatype.mavenbook.weather.Main </mainClass> <addClasspath>true</addClasspath> </manifest> </archive> </configuration></plugin>命令:
mvnjar:jarPS:默認(rèn)插件,如果需要更多的配置(例如jar檔案說明信息、選擇性打包等等),可以查看官方文檔/plugins/maven-jar-plugin/測(cè)試插件<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <testFailureIgnore>true</testFailureIgnore> </configuration></plugin>作用:可以跳過測(cè)試當(dāng)測(cè)試失敗仍然執(zhí)行PS:默認(rèn)插件,也可以命令后面加上參數(shù)跳過測(cè)試:-Dmaven.test.skip=true或–DskipTestsJetty插件<plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <configuration>
<!--每隔一段時(shí)間掃描項(xiàng)目是否更新--> <scanIntervalSeconds>0</scanIntervalSeconds> <connectors> <connectorimplementation="org.eclipse.jetty. server.nio.SelectChannelConnector"> <port>80</port><!--端口--> <maxIdleTime>60000</maxIdleTime> </connector> </connectors> <webAppConfig> <contextPath>/</contextPath> </webAppConfig> </configuration></plugin>插件命令:mvnjetty:run注意:即使是web項(xiàng)目模塊,開發(fā)時(shí)也不要將<packaging>設(shè)置為war,否則會(huì)產(chǎn)生一個(gè)大的war包,編譯時(shí)間很長(zhǎng)。建議只在發(fā)布時(shí)將其設(shè)置為war,發(fā)布war后馬上改回去。Maven插件總結(jié)Maven一切行為都是基于插件完成的artifactId以maven-xxx-plugin形式的是Maven官方插件,一般可以默認(rèn)使用(不需要配置)Apache提供的Maven插件列表:/plugins/index.htmlCodehaus提供的Maven插件列表:/plugins.html可以開發(fā)自己的插件項(xiàng)目,使得Maven功能無限擴(kuò)展Maven變量自定義屬性名稱任意。插件預(yù)建變量一般以maven.打頭,如piler.source為maven-compiler-plugin的變量;Maven內(nèi)置變量basedir:項(xiàng)目根目錄project.xxx:<project>節(jié)點(diǎn)下的任意內(nèi)容,如project.version環(huán)境變量以env.打頭,引用操作系統(tǒng)的環(huán)境變更,如env.JAVA_HOME.Maven變量引用及定義setting.xmlpom.xml變量名變量值,通過${變量名}引用之通過插件預(yù)建變量控制插件運(yùn)行行為<properties>
<piler.source>1.5</piler.source>
<piler.target>1.5</piler.target>
<pilerVersion>1.5</pilerVersion>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties><plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration>
<source>1.5</source>
<target>1.5</target>
<encoding>UTF-8</encoding> </configuration></plugin>目錄Maven簡(jiǎn)介Maven基礎(chǔ)概念Maven私服依賴,聚合,繼承常用插件和自動(dòng)化部署IDEA下Maven項(xiàng)目開發(fā)Maven高級(jí)應(yīng)用導(dǎo)入Maven項(xiàng)目(1/6)(1)File->New...->ProjectFromExistingSources...導(dǎo)入Maven項(xiàng)目(2/6)(2)選擇Maven導(dǎo)入Maven項(xiàng)目(3/6)(3)勾選“Searchforprojectsrecursivily”導(dǎo)入Maven項(xiàng)目(4/6)(4)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 賀州學(xué)院《插畫設(shè)計(jì)》2021-2022學(xué)年第一學(xué)期期末試卷
- 菏澤學(xué)院《信息技術(shù)與課件制作》2021-2022學(xué)年第一學(xué)期期末試卷
- 菏澤學(xué)院《勞動(dòng)教育》2023-2024學(xué)年第一學(xué)期期末試卷
- 菏澤學(xué)院《體育管理學(xué)》2022-2023學(xué)年第一學(xué)期期末試卷
- 河南師范大學(xué)《中外小學(xué)教育史》2022-2023學(xué)年第一學(xué)期期末試卷
- 河南師范大學(xué)《現(xiàn)代儀器分析》2022-2023學(xué)年第一學(xué)期期末試卷
- 銀行工會(huì)工作總結(jié)范文三篇
- 河南師范大學(xué)《環(huán)境監(jiān)測(cè)學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 河南師范大學(xué)《復(fù)變函數(shù)與積分變換》2022-2023學(xué)年第一學(xué)期期末試卷
- 新課標(biāo)背景下的小學(xué)數(shù)學(xué)真實(shí)情境教學(xué)研究-以《折線統(tǒng)計(jì)圖里的康城》的教學(xué)為例
- 2024年2024年離婚協(xié)議書模板
- 2024年柔性直流輸電系統(tǒng)寬頻振蕩分析與控制報(bào)告-華北電力大學(xué)(劉崇茹)
- 廣西邕衡教育名校聯(lián)盟2024-2025學(xué)年高三上學(xué)期10月適應(yīng)性檢測(cè)試題 英語 含答案
- 教師備課教案模板
- 2024年山東省日照市中考數(shù)學(xué)試題卷(含答案)
- 液化石油氣泄漏應(yīng)急處理考核試卷
- 早產(chǎn)兒低體重兒護(hù)理課件
- 應(yīng)急第一響應(yīng)人理論考試試卷(含答案)
- MOOC 跨文化交際通識(shí)通論-揚(yáng)州大學(xué) 中國(guó)大學(xué)慕課答案
- EDA實(shí)驗(yàn)報(bào)告1組合邏輯電路的設(shè)計(jì)
- 2020學(xué)校食堂自查自糾報(bào)告3篇
評(píng)論
0/150
提交評(píng)論