❶ 如何用maven運行特定的test case
是指不知道包在哪兒?可以看一下你eclipse里配置的maven路徑是哪兒,然後去找到setting.xml,看看裡面配置的倉庫路徑,所有包都在那裡。
❷ 如何配置maven環境
配置maven運行環境可以這樣弄:
第一步:配置maven環境
將下載文件解壓,然後設置maven環境
如果你配置過jdk的話,這里對你應該不難。如我的maven環境為:F:\maven\apache-maven-3.0.3
我的電腦-----屬性----高級-----環境變數-----環境變數-----新建
變數名:M2_HOME
變數值:F:\maven\apache-maven-3.0.3
找到path
在環境變數值尾部加入:;%M2_HOME%\bin;---前面注意分號
當然,你也可以直接在path 路徑下加入:;F:\maven\apache-maven-3.0.3\bin 只是上面的方式更優雅一點。
我新建立
打開命令提示符(開始---運行---cmd),檢查我們的java環境和maven環境是否有誤。
第二步:修改倉庫位置
修改我們倉庫地址,倉庫用於存放我們項目所依賴的所有jar包。
我的倉庫路徑:F:\maven\repo----這個路徑是我自己創建,你可以將路徑創建在任何位置。
我們打開…\apache-maven-3.0.3\conf\目錄下的setting.xml文件,設置成我們創建的倉庫路徑
下面我們用一個命令驗證一下。打開命令提示符,輸入:mvn help:system
該命令會列印出所有的java系統屬性和環境變數。這些信息對我們日常的編程工作很有幫且。
如果運行的過程中沒有錯誤,打開我們倉庫(F:\maven\repo)會發現裡面多了一些文件。這些文件就是我們從maven的中央倉庫下載到本地倉庫的。
第三步:創建maven項目
創建一個我們自己的項目。
❸ maven pom 怎麼從jar包裡面排除一個類 exclude 某個類
沒法通過pem文件配置移除某個特定的類,可以移除整個jar包和移除該jar包的依賴jar包
❹ Maven中的內置屬性,變數,有哪些及如何使用
最重要的就是
1 變數類型, 主要是數值型和字元串型這兩個特別重要,如果把這兩個類型相互改變 則數據就是消失了
2 值。 這個是在分類變數時 需要賦予每個分類變數含義的時候,比如性別用1和2代替,此時就需要在值裡面設置1 表示男 2表示女 這樣
3 度量標准:這個是用來說明數據是連續性還是分類數據的,這個會直接影響分析結果。
其他的都只是顯示上的問題,本質的不會有所改變 所以可以忽略
❺ java maven pom properties配置unicode編碼怎麼變成了中文不讓目標文件顯示中文
是否顯示中文,和編碼無關,和maven過濾器無關,和打開config.properties這個文件使用的文本編輯器是否能夠自動識別UTF碼有關。配置文本編碼格式為UTF-8,文本編輯器用UFT-8標准去解碼顯示,當然是能夠正確顯示中文的啊。
❻ maven配置文件settings.xml中的profiles怎麼用
profile介紹
4.1profile簡介
profile可以讓我們定義一系列的配置信息,然後指定其激活條件。這樣我們就可以定義多個profile,然後每個profile對應不同的激活條件和配置信息,從而達到不同環境使用不同配置信息的效果。比如說,我們可以通過profile定義在jdk1.5以上使用一套配置信息,在jdk1.5以下使用另外一套配置信息;或者有時候我們可以通過操作系統的不同來使用不同的配置信息,比如windows下是一套信息,linux下又是另外一套信息,等等。具體的激活條件有哪些我在後文會講到。
4.2profile的定義位置
對於使用Maven3,我們可以有多個地方定義profile。定義的地方不同,它的作用范圍也不同。
針對於特定項目的profile配置我們可以定義在該項目的pom.xml中。
針對於特定用戶的profile配置,我們可以在用戶的settings.xml文件中定義profile。該文件在用戶家目錄下的「.m2」目錄下。
全局的profile配置。全局的profile是定義在Maven安裝目錄下的「conf/settings.xml」文件中的。
4.3profile中能定義的信息
profile中能夠定義的配置信息跟profile所處的位置是相關的。以下就分兩種情況來討論,一種是定義在settings.xml中,另一種是定義在pom.xml中。
4.3.1 profile定義在settings.xml中
當profile定義在settings.xml中時意味著該profile是全局的,它會對所有項目或者某一用戶的所有項目都產生作用。因為它是全局的,所以在settings.xml中只能定義一些相對而言范圍寬泛一點的配置信息,比如遠程倉庫等。而一些比較細致一點的需要根據項目的不同來定義的就需要定義在項目的pom.xml中。具體而言,能夠定義在settings.xml中的信息有<repositories>、<pluginRepositories>和<properties>。定義在<properties>裡面的鍵值對可以在pom.xml中使用。
4.3.2 profile定義在pom.xml中
定義在pom.xml中的profile可以定義更多的信息。主要有以下這些:
l<repositories>
l<pluginRepositories>
l<dependencies>
l<plugins>
l<properties>
l<dependencyManagement>
l<distributionManagement>
l還有build元素下面的子元素,主要包括:
<defaultGoal>
<resources>
<testResources>
<finalName>
4.4profile的激活方式
Maven給我們提供了多種不同的profile激活方式。比如我們可以使用-P參數顯示的激活一個profile,也可以根據環境條件的設置讓它自動激活等。下面將對它們一一進行介紹:
4.4.1 使用activeByDefault設置激活
先看下面一個配置
Xml代碼
<profiles>
<profile>
<id>profileTest1</id>
<properties>
<hello>world</hello>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>profileTest2</id>
<properties>
<hello>andy</hello>
</properties>
</profile>
</profiles>
我們可以在profile中的activation元素中指定激活條件,當沒有指定條件,然後指定activeByDefault為true的時候就表示當沒有指定其他profile為激活狀態時,該profile就默認會被激活。所以當我們調用mvn package的時候上面的profileTest1將會被激活,但是當我們使用mvn package –P profileTest2的時候將激活profileTest2,而這個時候profileTest1將不會被激活。
4.4.2 在settings.xml中使用activeProfiles指定處於激活狀態的profile
我們可以在settings.xml中使用activeProfiles來指定需要激活的profile,這種方式激活的profile將所有情況下都處於激活狀態。比如現在我們定義了如下兩個profile
Xml代碼
<profiles>
<profile>
<id>profileTest1</id>
<properties>
<hello>world</hello>
</properties>
</profile>
<profile>
<id>profileTest2</id>
<properties>
<hello>andy</hello>
</properties>
</profile>
</profiles>
這里的profile可以是定義在settings.xml中的,也可以是定義在pom.xml中的。這個時候如果我們需要指定profileTest1為激活狀態,那麼我們就可以在settings.xml中定義activeProfiles,具體定義如下:
Xml代碼
<activeProfiles>
<activeProfile>profileTest1</activeProfile>
</activeProfiles>
考慮這樣一種情況,我們在activeProfiles下同時定義了多個需要激活的profile。這里還拿上面的profile定義來舉例,我們定義了同時激活profileTest1和profileTest2。
Xml代碼
<activeProfiles>
<activeProfile>profileTest1</activeProfile>
<activeProfile>profileTest2</activeProfile>
</activeProfiles>
從profileTest1和profileTest2我們可以看出它們共同定義了屬性hello。那麼這個時候我在pom.xml中使用屬性hello的時候,它到底取的哪個值呢?是根據activeProfile定義的順序,後面的覆蓋前面的嗎?根據我的測試,答案是非也,它是根據profile定義的先後順序來進行覆蓋取值的,然後後面定義的會覆蓋前面定義的。
4.4.3 使用-P參數顯示的激活一個profile
假設我們現在有如下定義的profiles
Xml代碼
<profiles>
<profile>
<id>profileTest1</id>
<properties>
<hello>world</hello>
</properties>
</profile>
<profile>
<id>profileTest2</id>
<properties>
<hello>andy</hello>
</properties>
</profile>
<profiles>
那麼當我們在進行Maven操作時就可以使用-P參數顯示的指定當前激活的是哪一個profile了。比如我們需要在對項目進行打包的時候使用id為profileTest1的profile,我們就可以這樣做:
Cmd代碼
mvnpackage–PprofileTest1
當我們使用activeByDefault或settings.xml中定義了處於激活的profile,但是當我們在進行某些操作的時候又不想它處於激活狀態,這個時候我們可以這樣做:
Cmd代碼
Mvnpackage–P!profileTest1
這里假設profileTest1是在settings.xml中使用activeProfile標記的處於激活狀態的profile,那麼當我們使用「-P !profile」的時候就表示在當前操作中該profile將不處於激活狀態。
4.4.4根據環境來激活profile
profile一個非常重要的特性就是它可以根據不同的環境來激活,比如說根據操作系統的不同激活不同的profile,也可以根據jdk版本的不同激活不同的profile,等等。
4.4.4.1根據jdk來激活profile
Xml代碼
<profiles>
<profile>
<id>profileTest1</id>
<jdk>1.5</jdk>
</profile>
<profiles>
上面情況表示在jdk為1.5版本系列的時候激活profileTest1。
Xml代碼
<profiles>
<profile>
<id>profileTest1</id>
<jdk>[1.4,1.7)</jdk>
</profile>
<profiles>
上面的情況表示在jdk為1.4、1.5和1.6的時候激活profileTest1。
4.4.4.2根據操作系統來激活profile
Xml代碼
<profiles>
<profile>
<id>profileTest1</id>
<activation>
<os>
<name>WindowsXP</name>
<family>Windows</family>
<arch>x86</arch>
<version>5.1.2600</version>
</os>
</activation>
</profile>
</profiles>
上面的情況就是根據操作系統的類型來激活profileTest1。
4.4.4.3根據系統屬性來激活profile
Xml代碼
<profiles>
<profile>
<id>profileTest1</id>
<activation>
<property>
<name>hello</name>
<value>world</value>
</property>
</activation>
</profile>
</profiles>
上面的profileTest1將在提供了系統屬性hello,並且其值為world的時候激活。下面的做法可以激活profileTest1。
Cmd代碼
mvnpackage–Dhello=world
當是下面的這種定義形式時,profileTest1將在指定了系統屬性hello,且其值為任意值的時候被激活。
Xml代碼
<profiles>
<profile>
<id>profileTest1</id>
<activation>
<property>
<name>hello</name>
</property>
</activation>
</profile>
</profiles>
4.4.4.4根據文件是否存在激活profile
Xml代碼
<profiles>
<profile>
<id>profileTest1</id>
<activation>
<file>
<exists>target</exists>
</file>
</activation>
</profile>
</profiles>
上面的定義表示當存在target文件時激活profileTest1。
Xml代碼
<profiles>
<profile>
<id>profileTest1</id>
<activation>
<file>
<missing>target</missing>
</file>
</activation>
</profile>
</profiles>
上面的定義表示當不存在target文件時激活profileTest1。
4.5查看當前處於激活狀態的profile
我們可以同時定義多個profile,那麼在建立項目的過程中,到底激活的是哪一個profile呢?Maven為我們提供了一個指令可以查看當前處於激活狀態的profile都有哪些,這個指定就是mvn help:active-profiles。
現在假設我們的settings.xml文件中有如下profile的定義:
<profiles>
<profile>
<id>profileTest1</id>
<activation>
<file>
<missing>target</missing>
</file>
</activation>
</profile>
</profiles>
<activeProfiles>
<activeProfile>profileTest1</activeProfile>
</activeProfiles>
這個時候我們可以看到,我們已經定義了profileTest1始終為激活狀態,這個時候我們使用mvn help:active-profiles查看處於激活狀態的profile時,就會列印出如下內容:
❼ 如何在maven中添加checkstyle檢查,PMD,JDepend檢查功能
安裝 Maven 之前要求先確定你的 JDK 已經安裝配置完成。Maven是 Apache 下的一個項目,目前最新版本是 3.1.0,我用的也是這個。
首先去官網下載 Maven
下載完成之後將其解壓,我將解壓後的文件夾重命名成 maven,並將它放在 D:\Server 目錄下,即 maven 最終的路徑是:D:\Server\maven
配置 maven 環境變數:
系統變數:MAVEN_HOME = D:\Server\maven
用戶變數:path = %MAVEN_HOME%\bin
相信大家都有配過環境變數的,詳細步驟就不說了,對著把屬性名和屬性值配上的OK了。
❽ maven profile 屬性怎麼用
profile可以讓我們定義一系列的配置信息,然後指定其激活條件。這樣我們就可以定義多個profile,然後每個profile對應不同的激活條件和配置信息,從而達到不同環境使用不同配置信息的效果。比如說,我們可以通過profile定義在jdk1.5以上使用一套配置信息,在jdk1.5以下使用另外一套配置信息;或者有時候我們可以通過操作系統的不同來使用不同的配置信息,比如windows下是一套信息,linux下又是另外一套信息,等等。
❾ 如何通過maven過濾web資源中的內容
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<configuration>
專<webResources>
<resource>
屬
<directory>src/main/webapp</directory>
<excludes>
<exclude>${package.environment}/*.*</exclude>
</excludes>
</resource>
</webResources>
</configuration>
</plugin>
❿ 怎麼知道自己依賴的maven包屬性
在pom.xml 上可以找到,比如
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.3.14</version>
</dependency>
如果你想要添加jar包但是不知道屬性,你可以去這個網址查找他的屬性http://search.maven.org/#search ,輸入你需要的jar包名字,就可以找到他的屬性,點擊進去有詳細信息。