找回密码
 点一下
查看: 1860|回复: 3

linux的maven+turbine+turque java项目移植到windows eclipse的过程记录

  [复制链接]
发表于 2007-2-16 02:24:51 | 显示全部楼层 |阅读模式
linux中的运行环境:

  • java 1.4.2_10 jdk
  • mysql  Ver 14.12 Distrib 5.0.18, for pc-linux-gnu (i686)
  • jakarta-tomcat 5.0.28
  • turbine.version = 2.3.1
  • maven-torque-plugin-3.1.1.jar
  • maven-eclipse-plugin-1.9.jar


移植前把linux中的maven/tomcat/自己的项目/用户目录中的.maven 均下载到windows的PC上。
windows 运行环境:WINDOWS XP系统在C:盘, 用户为Administrator
以下安装建议均安装到非系统盘,以免重装系统丢失配置。并且应该安装与原系统近似的版本,以免出错。

  • 到sun.com 下载 java 1.4.2_13 sdk 并安装, 设置好JAVA_HOME=D:\j2sdk1.4.2_13\bin系统变量(在我的电脑->属性->高级->环境变量 中增加)
  • 安装mysql  5.0.18,配置好与原项目要求一样的用户和用户权限。(当然也可以修改在文件build.properties中修改app.database.user,app.database.password
  • 安装cygwin (http://cygwin.com/), 这是用DOS模式仿真linux的很好工具。注意:运行cygwin时,根目录就是cygwin, D:盘变为 /cygdrive/d。
  • 第一次运行cygwin时, 会在cygwin/home中创建个与你windows用户同名字的目录(如D:\cygwin\home\Administrator), 此便是cygwin模拟的用户目录. 把linux中 登陆环境配置文件 .bashrc 适当修改后复制到cygwin模拟的用户目录D:\cygwin\home\Administrator.
  • 直接复制linux 中 tomcat 5.0.28,tomcat是用java开发的,可以多平台运行。为了操作方便,最好复制到cygwin目录中,并且与原来的linux位置和名字一样(提示,使用cygwin时,根目录是D:\cygwin\)。这样便不用修改在build.properties文件中修改maven.appserver.home = ???了。
  • 安装maven 1.02, 注意把原linux环境用户目录中.maven的所有文件复制到C:\Documents and Settings\Administrator(Administrator为windows的用户名),同样需要设置MAVEN_HOME指向安装目录,如 D:\Apache\Maven1.2。  把原linux maven plugins目录中的*.jar全部覆盖到windows的maven plugins (后注: maven 其实也可以直接从linux中直接复制过来使用的, 因为maven也是java所写)
  • 复制要移植的maven项目到D:\cygwin\home\Administrator(cygwin模拟的用户目录)
  • 修改build.properties, 如basedir和上面提到的变量.
  • 使用cygwin, 在 maven项目所在位置运行项目重建, 比如还原数据库, 测试重新发布模板/编译发布java serverlet等
  • maven 安装时已经有maven-eclipse-plugin-1.9.jar了, 现在所需要的便是在在 maven项目所在位置运行 maven eclispe,  便可以生成eclispe所需要的文件 .classpath 和 .project 了.
生成Eclipse项目
我打赌你一定想在IDE下工作。Maven通过插件来与Eclipse,InelliJ,IDEA,JBuilder,JDeveloper以及Emacs集成。Maven很好的与全部这些工作集成,本实验关注其在Eclipse上的集成,一个开源的IDE。


我该如何做?
这个过程很简单;仅仅执行eclipse插件:

C:\dev\mavenbook\code\genapp\test-application>maven eclipse
build:start:
eclipse:generate-project:
[echo] Creating C:\dev\mavenbook\code\genapp\test-application/.project ...
eclipse:generate-classpath:
[echo] Creating C:\dev\mavenbook\code\genapp\test-application/.classpath ...
[echo] Contains JUnit tests
[echo] Setting compile of src/test to target/test-classesPlugin 'cactus-maven' in project 'Test Application' is not available
[echo] Setting default output directory to target/classeseclipse:
[echo] Now refresh your project in Eclipse (right click on the projectand select "Refresh")
BUILD SUCCESSFULTotal time: 2 seconds

Maven创建两个文件以识别Eclipse的项目:.project和.classpath。在Eclipse中,你就可以通过下面的步骤导入这个工程了:
1.启动Eclipse。
2.从菜单栏选择File→Import...
3.选择现存项目放入Workspace并单击Next按钮。
4.在Import对话框选择C:\dev\mavenbook\code\genapp\test-application目录,并单击Finish按钮。

你稍候将执行更多步来指向Eclipse到本地Maven资源库。Eclipse使用一个名叫MAVEN_REPO来指向到本地Maven资源库。你能通过在命令行执行下面的操作设置MAVEN_REPO来使用Maven:
maven -Dmaven.eclipse.workspace=c:\eclipse\workspace eclipse:add-maven-repo
执行这个目标可以设置位于目录c:\eclipse\workspace的全局变量MAVEN_REPO。
作为选择,你可以按照这些步骤手工配置该变量:
1.从菜单栏中选择Window→打开Eclipse Preferences选择preferences。
2.在树型菜单左手边的Preferences对话框,选择Java→Build Path→Classpath变量。
3.单击New按钮来创建一个新的变量;这可以带入到新变量对话框。
4.输入MAVEN_REPO到Name域。
5.单击Folder按钮选择你本地的Maven资源库(greedwind注: 即是上面提到的C:\Documents and Settings\Administrator\.maven目录(Administrator为windows的用户名))。
6.单击OK并重新构建你的项目。

你可能需要配置MAVEN_REPO仅一次;该变量是全局的它可以与全部Eclipse项目共享。

来源: http://www.wujianrong.com/archives/2006/12/mavenmaven.html


如果使用cygwin作模拟, 其实整个移植过程可以很简单. 就是按照linux中原有的项目目录结构原本不动的复制到cygwin中. 并在windows中使用与linux同样的用户名, 让cygwin模拟整个linux环境, 这样一来, 不需要再修改maven的配置, 大大方便cvs版本控制软件的使用.  

题后话, 使用maven是不需要 cygwin 来支持的, 只是为了方便移植. 整个移植过程中, 我走了太多弯路. 最主要的时间是花在maven的repository(依存关系)是默认是保存在用户目录中的.maven中, 而windows的用户目录就是C:\Documents and Settings\Administrator\.maven, 就是上面2次提到的. 这也可修改, 可以在windows中的环境变量定义MAVEN_HOME_LOCAL, 把这MAVEN_HOME_LOCAL 设置为 D:\cygwin\home\Administrator\.maven 便可以了.

走了好多冤枉路, 但这些是做过了才明白的. 最重要的是, 我现在可以用手提电脑来用IDE在本地开发这项目了, 这会方便好多好多 - 因为在此之前, 我是通过internet ssh(可以说是加密的telnet)远程登陆过去工作的, 不能用IDE, 而且速度很慢. 12月的台湾地震断网事件还造成我几乎不能工作.

哈哈, 该笑笑了. 笑着过年去了.
参考资料:

Apache 项目主页
http://www.apache.org

Maven起步-教你开始使用Maven
http://www.wujianrong.com/archives/2006/12/mavenmaven.html

maven1.x介绍
http://schnell18.javaeye.com/blog/39211

TOMCAT5在WINDOWS下的系统服务相关的命令行
http://www.tongyi.net/develop/java/1058170.html

eclipse + maven 2.0 plugin flash演示http://m2eclipse.codehaus.org/Maven_2.0_Plugin_for_Eclipse.html

MAVEN_HOME and MAVEN_HOME_LOCAL (重要!!)
http://java2.5341.com/msg/42421.html

使用ant发布war包build.xml的配置
使用Maven构造Turbine项目
http://www.wujianrong.com/archives/ant/
发表于 2007-2-16 02:41:07 | 显示全部楼层
555...这又素虾米...传说中滴借地保存资料?
回复

使用道具 举报

发表于 2007-2-16 03:27:34 | 显示全部楼层
5555……我是linux超级小白……基本就是我妈在windows下这种程度
回复

使用道具 举报

发表于 2007-2-16 10:19:58 | 显示全部楼层
收藏.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-11-22 17:24 , Processed in 0.165984 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表