Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具
Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长。

以上文字摘抄自百度百科
http://baike.baidu.com/view/336103.htm?fr=aladdin



0. 搭建maven

maven环境搭建可以参考下面这篇文章。

http://wentao365.iteye.com/blog/903396

1. 配置proguard

1) 修改pom.xml添加插件

  1. <plugin>
  2. <groupId>com.pyx4me</groupId>
  3. <artifactId>proguard-maven-plugin</artifactId>
  4. <executions>
  5. <execution>
  6. <phase>package</phase>
  7. <goals>
  8. <goal>proguard</goal>
  9. </goals>
  10. </execution>
  11. </executions>
  12. <configuration>
  13. <obfuscate>true</obfuscate>
  14. <proguardInclude>${basedir}/proguard.conf</proguardInclude>
  15. <!-- 添加依赖,这里你可以按你的需要修改 -->
  16. <libs>
  17. <lib>${java.home}/lib/rt.jar</lib>
  18. <lib>lib/fcexporter_jdk1.5.jar</lib>
  19. <lib>lib/fcexporthandler.jar</lib>
  20. <lib>lib/jsp-api.jar</lib>
  21. <lib>lib/servlet-api.jar</lib>
  22. </libs>
  23. <addMavenDescriptor>false</addMavenDescriptor>
  24. </configuration>
  25. <dependencies>
  26. <!-- 使用4.8版本来混淆 -->
  27. <dependency>
  28. <groupId>net.sf.proguard</groupId>
  29. <artifactId>proguard</artifactId>
  30. <version>4.8</version>
  31. <scope>runtime</scope>
  32. </dependency>
  33. </dependencies>
  34. </plugin>

2) 在pom.xml平级目录下添加proguard.conf文件

  1. # ----------------------------------
  2. #  通过指定数量的优化能执行
  3. #  -optimizationpasses n
  4. # ----------------------------------
  5. -optimizationpasses 3
  6. # ----------------------------------
  7. #   混淆时不会产生形形色色的类名
  8. #   -dontusemixedcaseclassnames
  9. # ----------------------------------
  10. -dontusemixedcaseclassnames
  11. # ----------------------------------
  12. #      指定不去忽略非公共的库类
  13. #  -dontskipnonpubliclibraryclasses
  14. # ----------------------------------
  15. #-dontskipnonpubliclibraryclasses
  16. # ----------------------------------
  17. #       不预校验
  18. #    -dontpreverify
  19. # ----------------------------------
  20. # -dontpreverify
  21. # ----------------------------------
  22. #      输出生成信息
  23. #       -verbose
  24. # ----------------------------------
  25. -verbose
  26. #混淆时应用侵入式重载
  27. -overloadaggressively
  28. #优化时允许访问并修改有修饰符的类和类的成员
  29. -allowaccessmodification
  30. #确定统一的混淆类的成员名称来增加混淆
  31. -useuniqueclassmembernames
  32. #这里添加你不需要混淆的类
  33. -keep  class com.zsoftware.common.cache.** {*;}
  34. -keep  class com.zsoftware.common.constant.** {*;}
  35. -keep  class com.zsoftware.common.dwr.** {*;}
  36. -keep  class com.zsoftware.common.servelt.** {*;}
  37. -keep  class com.zsoftware.common.util.** {*;}
  38. -keep  class com.zsoftware.Component.** {*;}
  39. -keep  class com.zsoftware.interfacepkg.** {*;}
  40. -keep  class com.zsoftware.model.** {*;}
  41. -keep  class com.zsoftware.view.** {*;}
  42. -keep  class com.zsoftware.webResource.** {*;}
  43. -keep public class * extends  javax.servlet.Servlet
  44. -keepdirectories  **
  45. -keepattributes **
  46. #-keepnames class * implements java.io.Serializable
  47. # ---------保护所有实体中的字段名称----------
  48. -keepclassmembers class * implements java.io.Serializable {
  49. <fields>;
  50. }
  51. # --------- 保护类中的所有方法名 ------------
  52. -keepclassmembers class * {
  53. public <methods>;
  54. }

【环境配置】配置maven的更多相关文章

  1. Linux环境下配置eclipse,以及创建maven工程

    一:maven的安装 1.安装配置maven环境变量 2.验证 二:eclipse的安装 3.解压配置eclipse 4.启动eclipse,必须在虚拟机的eclipse下启动 5.结果 三:修改配置 ...

  2. maven安装和环境变量配置

    maven安装和环境变量配置 myeclipse自带maven(Maven4MyEclipse)创建项目:新建Web Projects项目,在新建的页面上打上maven的勾.新建的项目里会多出个pom ...

  3. Mac maven环境变量配置

    近期一直在学习使用Macbook,在这里记录一下全部遇到的问题 问题起源: 1.Macbook 安装了Eclipse,Eclipse装入插件maven & git , 可是在git中clone ...

  4. Maven下载与环境变量配置

    前言: Maven 是一个基于 Java 的工具,所以要做的第一件事情就是安装 JDK.如果还未安装 JDK,可以参考Win10下JDK下载与环境变量配置. 项目 要求 JDK Maven 3.3+ ...

  5. 011 Linux环境下配置eclipse,以及创建maven工程

    一:maven的安装 1.安装配置maven环境变量 2.验证 二:eclipse的安装 3.解压配置eclipse 4.启动eclipse,必须在虚拟机的eclipse下启动 5.结果 三:修改配置 ...

  6. maven环境的配置,如果jar包下载不下来,其他配置无错误的话,极有可能是网速的缘故

    1首先下载apach maven 2配置maven环境变量 m2_home  maven的源文件的路径 path变量后跟 %m2_home%\bin 3cmd 控制台运行mvn -version 查看 ...

  7. Mac下JDK、Maven、Tomcat、Git开发安装及环境变量配置

    本文主要内容: - 1.Mac OS 10.11.6 [OS X EL Captain] - 2.Mac OS 安装Java 设置环境变量 - 3.Mac OS 安装Maven设置环境变量 - 4.M ...

  8. Maven 环境的配置

    Maven 环境的配置 现在Java新架构的不断出现,例如Struts,Spring,Hibernate等,项目的配置文件的增多,给开发人员带来很大麻烦.在实际的开发当中,Myeclipse中的pro ...

  9. Maven环境变量配置和在Eclipse中的配置

    1.Maven环境变量配置 M2_HOME :变量值为maven的安装目录 在path后添加%M2_HOME%\bin; 检查JDK,maven配置的cmd命令 echo %JAVA_HOME% ja ...

  10. maven环境的配置

    http://maven.oschina.net/help.html     --配置说明 http://maven.oschina.net/index.html#nexus-search;quick ...

随机推荐

  1. bzoj 5000: OI树

    Description 几天之后小跳蚤即将结束自己在lydsy星球上的旅行.这时,lydsy人却发现他们的超空间传送装置的能量早在小跳 蚤通过石板来到lydsy星球时就已经消耗光了.这时,小跳蚤了解到 ...

  2. bzoj1073[SCOI2007]kshort

    1073: [SCOI2007]kshort Time Limit: 20 Sec  Memory Limit: 162 MBSubmit: 1483  Solved: 373[Submit][Sta ...

  3. Frame buffer分析 - fbmem.c【转】

    转自:http://www.cnblogs.com/armlinux/archive/2012/03/01/2396753.html 45 struct fb_info *registered_fb[ ...

  4. AR934X built-in switch链路检测问题及处理方法

    1 问题 在使用QSDK平台配合QCA9531方案时,碰到过2个实在无解的问题,其一:将有线口连接到其它傻瓜交换机上,然后通过无线或另一个有线口登录的设备上,执行ifconfig ethx down, ...

  5. 为什么Unix只允许对非目录文件实行勾链?

    Unix文件系统的目录结构中带有交叉勾链,用户可以用不同的文件路径名共享一个文件,即文件的勾链在用户看来是为了一个已存在的文件另起一个路径名.在Unix的多级目录结构中勾链的结果表现为一个文件由多个目 ...

  6. Python类的定义

    Python笔记--类定义 一.类定义: class <类名>: <语句> 类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性 如果直接使用类名修改其属 ...

  7. Linux文件系统的介绍

    1.Linux的文件系统是一个典型的树形结构,只有一个根节点 如下图: 2.在Linux中一切皆文件 Linux 对数据文件(.mp3..bmp),程序文件(.c..h.*.o),设备文件(LCD.触 ...

  8. js求和运算在可变参数的情况下ES3、ES5和ES6的写法区别

    //ES3.ES5的写法 function foo(){ var arr = Array.prototype.slice.call(arguments); var sum = 0; arr.forEa ...

  9. 重构:从Promise到Async/Await

    摘要: 夸张点说,技术的发展与历史一样,顺之者昌,逆之者亡.JS开发者们,赶紧拥抱Async/Await吧! GitHub仓库: Fundebug/promise-asyncawait 早在半年多之前 ...

  10. Laravel-admin 七牛云上传文件到七牛云出现卡顿失败情况

    由于所做项目需要管理后台众多,所以选择了Laravel-admin后台框架进行开发.节省了权限控制以及页面处理等问题的时间 Laravel-admin文档地址 http://laravel-admin ...