• maven之pom


    记录一下最近的pom的相关设置,plugin的官方地址配置:http://maven.apache.org/plugins/index.html

    看了网上说了很多例子,有很多不清楚,看一下官方的,会有新的发现:

    1、修改plugin的配置之后,项目出现“x”的错误提示,看一下problems,说是project up to date之类,这个时候就是提示我们应该更新configure

      右键工程-》maven4myeclipse-》update project configure,如图:

      

    2、我们打包的时候,测试目录的处理,一种可以直接跳过;另外一种是设置忽略错误(相当于执行了我们的测试代码);最后一种是比较细腻的,可以设置XX方法不被执行,如下:

    <plugin>
    	<groupId>org.apache.maven.plugins</groupId>
    	<artifactId>maven-surefire-plugin</artifactId>
    	<configuration>
    		<!-- 跳过测试 -->
    		<skip>true</skip> 
    		<!-- 设置xx方法不被执行,**代表任意目录,*代表任意字符
    		<excludes>
    			<exclude>**/*Test.java</exclude>
    		</excludes>
    		 -->
    		<!-- 测试代码错误忽略 
              <testFailureIgnore>true</testFailureIgnore>
              --> </configuration> </plugin>

    3、打包的时候不希望某些文件被打包进去,可以如下设置:

    <plugin>
    	<groupId>org.apache.maven.plugins</groupId>
    	<artifactId>maven-war-plugin</artifactId>
    	<version>2.6</version>
    	<configuration>
    		<packagingExcludes>WEB-INF/classes/doc/**</packagingExcludes>
    	</configuration>
    </plugin>
    

    路径是target里面项目的路径,这里注意一下,为啥这么说呢?假如你的工程里面删除了某个文件,记得把target目录下的工程删除重新生成(clean),否则打包的文件还包含自此文件,war包是根据target下的工程打包的  

     4、如果在pom文件中定义了一些变量想在后面的.properties之类的文件中引用,则可以用resource的方式进行制定要扫描的路径,2中方式:

    第一种

    <project ...>
         ...
         <properties>
           <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
           ...
         </properties>
         ..
        </project>
    

    第二种

    <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <version>3.1.0</version>
            <configuration>
              ...
              <encoding>UTF-8</encoding>
              ...
            </configuration>
          </plugin>
        </plugins>
        ...
      </build>

    两种方式并存的话,会优先插件的方式(第二种)

    有时候我们工程中有excel模板发布之后是乱码,就是因为类似这种二进制文件在资源目录下,他会去扫描所有的resource文件,二进制文件被破坏造成的,这时候可以exclude即可

  • 相关阅读:
    [C#]mouse_event模拟点击时坐标参数无效?!
    体验boost::spirit
    喜讯,公司换宽屏液晶显示器了
    [疑难杂症]扩展AxWebBrowser的问题???
    VS 2005 BUG: 新增JScript文件编码问题引起乱码?
    在JavaScript中实现命名空间
    [C#]实现序列号生成器
    基于Web的仿WF工作流设计器
    分享:基于UDP协议实现可靠的数据传输
    远程控制之屏幕截取 小结
  • 原文地址:https://www.cnblogs.com/aishangyizhihu/p/4353830.html
Copyright © 2020-2023  润新知