Maven学习小记

原创 2004年09月17日 16:31:00

        不知道各位是怎么学习maven的,我应该说是今天才开始学用Maven的,在学的过程中发现了中文消息显示问题(消息显示为???)和无法下载以及编译慢的问题,我觉得如果大家多在网上查查的话,根本就不能说是问题。下面我就说说怎么解决好了
1、执行时提示为???的问题
这个问题其实也就是中文问题,在Maven 1.0中其实已经将黄东的汉化版融入进去了,只是在融入中文的时候有一个小的失误。大家到%HAVEN_HOME%/lib目录下着到maven.jar文件,在这个压缩文件中的“org/apache/maven/messages”下有一个messages_zh_CN.properties中文消息文件,这个文件本身应该是为ASCII编码格式,但是在1.0中错误的存储为UFT-8格式。我们可以把这个文件解压出来让后用JDK自带的native2ascii.exe将其转换为ASCII格式后再加到maven.jar中。这样中文消息的问题就解决了!
2、关于无法连接到远程repository库进行下载和编译速度慢的问题。
        在默认的情况下Maven的远程库为ibibio这个网站,不知道为什么这个网站在中国被封掉了!所以无法下载,不过我们可以通过修改每个项目中的project.properties文件,在其中加入这样一行maven.repo.remote = http://public.planetmirror.com/pub/maven,这样就代表这个项目中的远程库可以到public.planetmirror.com/pub/maven这个地方下载。当然如果我们不想每个项目都更改的话,可以直接修改maven.jar中的defaults.properties文件,将其修改为上面这样。
       同时对于在一个公司内的开发,我们没有必要每个开发人员都到外网上下载,我们建立一个repository远程库网站就可以了,比如我们用Window IIS的话,我们只需要在我们的将建立一个web目录,将我们下载好的Repository文件夹下的所有的目录拷贝到这个web目录就好了。如我们建立的这个web目录对应的IIS虚拟目录为http://192.168.1.1/Maven/Reppository,那么我们只需要将开发人员的maven.repo.remote设置为http://192.168.1.1/Maven/Reppository就好了,这样我们一来是统一了我们的jar版本,二来我们开发人员在下载所需要的文件也就快多了。
        同时对应在编译速度慢还有一个原因是,在第一次编译时需要下载,同时,我们在编译的过程中需要检查jar的版本,对于下载jar,这个动作只是在第一次的时候会执行,在后面的时候Maven只会检查是否有最新版本的jar,如果有才会下载。我想检查jar版本对于一个团队的开发是必要的吧!

写到最后
        最后还想说的是,希望各位以后在学习的时候还是认真点吧!我今天在Google上搜索了解决这些问题的办法的时候,搜索出来的大部分都是说Maven有这些问题,而没有说怎么解决,我想如果大家都仔细点,不要什么问题不认真的看看就只是发牢骚而就此作罢。本身作为开源项目对于我们来说有两个层面的作用,一来我们可以拿过来使用,以提高我们的开发效率。二来更是我们可以学习,我们可以打开源代码来学学别人是怎么实现的,别人是怎么写程序的。这样在我们遇到问题的时候,我们也才能更好的知道问题的所在,当然对于实际中,我们不需要将我们所要用的开源项目的源代码看从头到尾看一遍,大部分时候来说根据兴趣和为了解决在使用开源项目中发现的Bug就够了,当你看的程序多了,你会发现,我们在使用很多开源项目中所出现的问题很多都是类似的,如在使用Maven的中文问题,其实它就是很多开源项目在Java国际化中出现的问题。我们看了Maven的这个解决办法,那么如果我们在以后使用其他开源项目中出现问题的时候,我们只需要把问题定位到这个范围就好了。

       今天在Google找这个解决办法的时候看了很多大家对maven的评论,心中有些生气,觉得没几个人能认真点来解决问题,打部分都是简单一用,只能说现在中国的IT行业中的很大的一部分人真的没有踏实的精神!

Maven学习笔记(三) :Maven使用入门

编写POM:      Maven项目的核心是pom.xml。POM(Project Object Model,项目对象模型)定义了项目的基本信息,用于描述项目如何构建,声明项目依赖,等等。     ...
  • Troy__
  • Troy__
  • 2014年08月26日 18:43
  • 3061

[maven学习笔记]第一节,认识maven,搭建maven开发环境,写第一个HelloWorld

maven是一个项目依赖构建系统,通过使用maven,可以有效的管理项目的引用中jar文件等依赖信息,可以方便的对项目进行移植等操作。是一个目前比较流行的项目研发使用框架,该文实现了maven命令行创...
  • sushengmiyan
  • sushengmiyan
  • 2014年10月16日 09:38
  • 16377

Maven实战学习笔记 3.Maven使用入门

在安装好Maven后,编写一个简单的不依赖IDE的Hello World项目。 3.1 编写pom文件         Maven项目的核心是pom.xml文件,创建一个Hello-word文件夹,在...
  • zndxlxm
  • zndxlxm
  • 2016年06月07日 22:40
  • 2659

VC学习小记

  • 2011年11月18日 13:16
  • 68KB
  • 下载

将jar发布到maven中央仓库小记

dexcoder-assistant发布也经历几个版本了,很多人反映使用不太方便,需要将源码下来后本地编译安装一下,如果能直接使用就好了。 osc提供了第三方的maven库,但终究没有官方的ma...
  • esrrhs
  • esrrhs
  • 2017年11月30日 11:18
  • 45

Maven使用小记

Maven使用小记
  • chendongyi
  • chendongyi
  • 2015年11月03日 23:05
  • 337

使用Maven自动部署Java Web项目到Tomcat问题小记

导读首先说说自己为啥要用maven管理项目,一个直接的原因是:我在自己电脑上开发web项目,每次部署到服务器上时都要经历如下步骤:首先在Eclipse里将项目打包成war包将服务器上原来的项目文件夹删...
  • lanxuezaipiao
  • lanxuezaipiao
  • 2014年10月21日 23:15
  • 15269

maven filter插件只替换了部分变量问题排查小记

maven的resources插件,有一个filter的作用,能够在打包的时候,从特定文件里读取key-value对,替换配置文件中的占位符变量。很多线上线下有不同环境的应用,都是用这种方式来打包,只...
  • inte_sleeper
  • inte_sleeper
  • 2013年08月20日 23:49
  • 2530

将jar发布到maven中央仓库小记

dexcoder-assistant发布也经历几个版本了,很多人反映使用不太方便,需要将源码下来后本地编译安装一下,如果能直接使用就好了。 osc提供了第三方的maven库,但终究没有官方的ma...
  • hj7jay
  • hj7jay
  • 2016年03月01日 12:33
  • 473

maven基本应用小记

maven,最强大的功能就是自动包依赖管理。包的引用依赖是复杂的、层次的、网状的,人工进行打包会耗费大量精力,这也是maven所专注解决的事情,让包管理变得eary。我一直对打包有明确的需求,却不会使...
  • wildfire8966
  • wildfire8966
  • 2016年11月16日 15:07
  • 132
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Maven学习小记
举报原因:
原因补充:

(最多只允许输入30个字)