maven的pom文件学习-程序员宅基地

技术标签: python  java  测试  

maven是规定了一种项目代码布局格式,maven按照这种格式进行代码管理、依赖jar管理、单元测试、资管管理、编译管理、发布管理。

maven的核心是mvn命令和pom.xml文件

pom.xml文件作为maven和核心之一,对其语法使用总结如下:

    1.properties关键字:项目的全局属性,如打包需要的编码 

<properties>

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

 </properties>

  2.repositories关键字:配置仓库的http服务路径,可以是本地私服、也可以是网络服务器私服、或者官方服务器,有顺序

<repositories>

  <repository>

   <id>build.local.libs</id>

   <url>http://build.local:8081/artifactory/libs-release-local</url>

   <layout>default</layout>

  </repository>

  <repository>

   <id>build.local.ext</id>

   <url>http://build.local:8081/artifactory/ext-release-local</url>

  </repository>

  <repository>

   <id>morphia.local</id>

   <name>build.local-releases</name>

   <url>http://build.local:8081/artifactory/morphia</url>

  </repository>

 </repositories>

 3.dependencies关键字:所有的依赖jar信息

<dependencies>

  <dependency>

   <groupId>junit</groupId>

   <artifactId>junit</artifactId>

   <version>4.8.2</version>

   <scope>test</scope>

  </dependency>
</dependencies>

4.内部项目公共jar包发布

<distributionManagement>

  <repository>

   <id>local-artifactory</id>

   <name>build.local-releases</name>

   <url>http://build.local:8081/artifactory/libs-release-local</url>

  </repository>

 </distributionManagement>

5.项目profile配置

<profiles>

  <profile>

   <id>dist</id>

   <build>

    <pluginManagement>

     <plugins>

      <plugin>

       <groupId>org.apache.maven.plugins</groupId>

       <artifactId>maven-compiler-plugin</artifactId>

       <version>2.0.2</version>

       <configuration>

        <source>1.6</source>

        <target>1.6</target>

       </configuration>

      </plugin>

   <plugin>

    <groupId>org.mortbay.jetty</groupId>

    <artifactId>jetty-maven-plugin</artifactId>

    <version>8.0.1.v20110908</version>

   </plugin>

      <plugin>

       <groupId>org.apache.maven.plugins</groupId>

       <artifactId>maven-assembly-plugin</artifactId>

       <configuration>

        <descriptors>

         <descriptor>assembly.xml</descriptor>

        </descriptors>

       </configuration>

       <executions>

        <execution>

         <phase>package</phase>

         <goals>

          <goal>attached</goal>

         </goals>

        </execution>

       </executions>

      </plugin>

     </plugins>

    </pluginManagement>

   </build>

  </profile>

  <profile>

   <id>sun.jdk</id>

   <activation>

    <property>

     <name>java.vendor</name>

     <value>Sun Microsystems Inc.</value>

    </property>

   </activation>

   <properties>

    <toolsjar>C:/Program Files/Java/jdk1.6.0_45/lib/tools.jar</toolsjar>

   </properties>

  </profile>

  <profile>

   <id>default-tools.jar</id>

   <activation>

    <property>

     <name>java.vendor</name>

     <value>Sun Microsystems Inc.</value>

    </property>

   </activation>

   <dependencies>

    <dependency>

     <groupId>com.sun</groupId>

     <artifactId>tools</artifactId>

     <version>1.5.0</version>

     <scope>system</scope>

     <!-- 此处根据实际配置 -->

     <systemPath>C:/Program Files/Java/jdk1.6.0_45/lib/tools.jar</systemPath>

    </dependency>

   </dependencies>

  </profile>

 </profiles>

 

    build设置:

Goals:clean install assembly:assembly

Profiles:dist

转载于:https://my.oschina.net/u/1458864/blog/287692

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_34309435/article/details/92118518

智能推荐

offSetWidth与Width的区别_html offsetwidth width区别-程序员宅基地

文章浏览阅读1.1k次。转载自:offsetwidth与width的区别,js获取html元素的实际高度1.offsetWidth属性可以返回对象的padding+border+width属性值之和,style.width返回值就是定义的width属性值。2.offsetWidth属性仅是可读属性,而style.width是可读写的。3.offsetWidth属性返回值是整数,而style.width的返回值是字符串,并..._html offsetwidth width区别

Android 获取assets下文件的绝对路径_获得assets绝对路径-程序员宅基地

文章浏览阅读1.1w次。https://blog.csdn.net/liaowenfeng/article/details/17717289/_获得assets绝对路径

管家婆分销安装完成后报错(网络访问失败,请重试)_软件网络访问失败,请重试-程序员宅基地

文章浏览阅读4k次。管家婆分销ERP V3 安装后打开报错报错信息:网络访问失败请重试解决方法:方法一取消选择方法二链接: https://share.weiyun.com/5p7DYqJ (密码:6SNw)将文件替换到根目录付费技术支持QQ:204814945..._软件网络访问失败,请重试

【数字信号处理】关于实现FIR滤波器的一些问题_信号与fir滤波器长度不同-程序员宅基地

文章浏览阅读2.8k次。在知乎上看到了一个提问,稍微整理了一下关于这些问题的回答https://www.zhihu.com/question/29945169FIR其实就是下面这个公式,其中数组x[]为输入,数组h[]为滤波参数(已知),数组y[]为滤波输出:问题1“实现FIR滤波过程就是上面这个过程?这么简单?还是自己理解错了根本不是这么回事?(想确认:对于实现这块,上面的理解对不对)”从理论上,FIR就是上面这个过程,但是做成实际使用的系统会遇到各种问题阻止你实现这个公式。情况1:已知FIR滤波器在时域的序列这可_信号与fir滤波器长度不同

用JavaScript实现选项卡功能,当选择全选按钮的时候,下边的复选框所以按钮被选中,当取消一个复选框按钮时,全选框按钮失去效果,当再次把所有复选框按钮选择实现全选_、实现操作复选框,要求是可以选择部分选项,也可以全选,全选按钮的状态根据选中的选项个数自动变化,即全-程序员宅基地

文章浏览阅读779次。点击全选,让下边的按钮都被选中,以及复选框的交互简单上代码啦~~CSS样式<style> * { padding: 0; margin: 0; } .wrap { width: 300px; margin: 100px auto 0; } table { border-collapse: _、实现操作复选框,要求是可以选择部分选项,也可以全选,全选按钮的状态根据选中的选项个数自动变化,即全选按钮的状态回自动取消或者自动勾选。

http请求工具类HttpClientUtil(get使用body,post乱码问题解决)_((httpentityenclosingrequestbase) httppost.setenti-程序员宅基地

文章浏览阅读3.4k次。最近很多发送http请求的需求存在,书写下util1:配置需要的依赖在pom.xml中配置http相关依赖 <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <s..._((httpentityenclosingrequestbase) httppost.setentity(new inputstreamentity(i

随便推点

Objective-C 中的id到底是什么-程序员宅基地

文章浏览阅读6.4k次。今天我就要来看清楚,id,你到底是个什么东西?

好记性不如烂笔头---Archlinux优化简介-程序员宅基地

文章浏览阅读818次。分析瓶颈要优化系统,先要找到性能瓶颈。通过分析系统配置能够获取这些信息。这里给出几条分析系统性能的简单方法: 运行大型软件(比如 openoffice、firefox)时,如果系统变卡,很可能是内存不足。以下命令用来查询内存使用信息(-/+buffers 一栏): $ free -m 如果开机时间很长,或者第一次加载某个程序十分缓慢,则很可能是硬盘太慢了..._archlinux mksquashfs

3DREM16P-7X/250YG24-8K4V比例减压阀放大器-程序员宅基地

文章浏览阅读106次。比例溢流阀是一种液压压力控制阀,它通过弹簧力的大小改变溢流压力大小变化。比例电磁铁作用在弹簧上的力可以按比例调整,所以就输入信号变化比例溢流阀的压力也会变化。普通溢流阀与比例溢流阀一样,都有一个阀芯,阀芯的一端是液压油产生的压力,另一端是机械力。普通溢流阀通过调节弹簧力,来调整液压压力。而比例溢流阀是电磁铁直接产生推力,作用在阀芯上,电磁铁上的输入电压可以在0-24伏之间变化,产生的推力就随之变化,从而得到连续变化的液压压力。

python文件操作(open()、write()、writelines()、read()、readline()、readlines()、seek()、os)_python open writeline-程序员宅基地

文章浏览阅读3.7k次,点赞4次,收藏23次。python文件操作(open()、write()、writelines()、read()、readline()、readlines()、seek()、os)_python open writeline

分布式限流实战--redis实现令牌桶限流_分布式令牌限流-程序员宅基地

文章浏览阅读9.5k次,点赞4次,收藏43次。这篇文章我们主要是分析一下分布式限流的玩法。 因为限流也是一个经典用法了。1.微服务限流随着微服务的流行,服务和服务之间的稳定性变得越来越重要。缓存、降级和限流是保护微服务系统运行稳定性的三大利器。缓存的目的是提升系统访问速度和增大系统能处理的容量,而降级是当服务出问题或者影响到核心流程的性能则需要暂时屏蔽掉,待高峰或者问题解决后再打开,而有些场景并不能用缓存和降级来解决,比如稀缺资源、数据库的写操作、频繁的复杂查询,因此需有一种手段来限制这些场景的请求量,即限流。比如当我们设计了一个函数,准备上线_分布式令牌限流

【Linux】文件系统-程序员宅基地

文章浏览阅读1.7k次,点赞27次,收藏22次。了解磁盘的物理结构、磁盘的具体物理结构、逻辑抽象、软硬连接,动静态库

推荐文章

热门文章

相关标签