现在的位置: 首页 > 综合 > 正文

小知识Memo笔记

2012年11月24日 ⁄ 综合 ⁄ 共 3124字 ⁄ 字号 评论关闭

小知识笔记

一、Eclipse虚拟机配置

Eclipse需要运行在JVM上的,MyEclipse安装的时候貌似也会顺便安装个jre,然后运行的时候在这个jre上。Eclipse也是的,不过经常Eclipse启动后,会提示你说它需要运行在jdk上,但是现在运行在jre上,这样的情况下,Eclipse常常有反应不过你的操作,而卡死。这就需要配置一下Eclipse的初始化启动参数了。

Eclipse安装目录下和eclipse.exe同目录,有个eclipse.ini,用编辑器打开该文件,配置如下:

-startup
plugins/org.eclipse.equinox.launcher_1.0.200.v20090520.jar
-vm
D:/tool/jdk6/bin/javaw.exe

      添加了红色部分的参数,虚拟机指向本机安装的jdk中的javaw.exe,需要注意的是,这个路径不允许有空格,所以,安装jdk的时候,不要采用有空格的安装路径。
很多人安装jdk,比较懒,采用默认的Program Files,这里面有空格,而且有空格的路径,还有很多其他的坏处。

二、Server的配置
        Eclipse中配置服务器和MyEclipse配置服务器是不一样的。
        MyEclipse配置服务器,比如说tomcat,现在有个tomcat6放在D:/,那么MyEclipse是将服务器指向这个D:/tomcat6,当我们发布工程的时候,Myeclipse会把工程按照打成war包的形式,以文件夹的形式拷贝到D:/tomcat6/webapps下面的。发布多次的话也就拷贝多次,而且支持自动更新。

        对于Eclipse,配置Server后,也是指向D:/tomcat6。不同的是,它会在工作区下面创建一个Servers文件夹,下面放配置server的配置文件,可以配置多个Server,互不干扰的。发布工程的时候,工程的内容不是copy到指向的服务器下面的,而是放到工作区下面的某个路径下。
比如工作区是:D:\wspace
工程名称是:mybatis         
那么发布工程到服务器的时候,比如tomcat,在工作区/Servers下面的tomcat对应的server.xml
中自动配置了如下:
<Context path="/mybatis" docBase="mybatis" ></Context>
这样服务器启动的时候,会去找工程发布的文件,去哪找呢?在这里:
{工作区}\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps
在这下面找mybatis,也就是docBase的值。如果以上的服务器是workspace中第一个配置的服务器,
那么就是tmp0,如果接着在配置多个服务器就是tmp1,tmp2,以此类推。

        Eclipse另一种配置Server的方式:

        Ecliipse配置Server,通常是先配置了runtime的,比如tomcat,Eclipse添加Server时,需要指定它的runtime,这就先要配置好runtime。

        runtime配好后,就可以由一个runtime来配置多个Server。一个runtime可以配置多个Server。在runtime的基础上新建Server很简单的,不多说,配好了就如下:

   同时可以看到新建的server的配置文件:   

      这里面新建Server时,还添加了一个工程,如图,双击那个server [ tomcat6-exerc ]得到如下的配置页面:

这上面可以对对我们新建的Server进行详细的配置。在Server Locations下面,建议选择Use Tomcat installation单选,这个时候Server path指向到了runtime的tomcat的目录下了。另外在Deploy path,可以指定到runtime那个tomcat的webapps下。

通常,时间久了,我们的电脑上就会有越来越多的工程。我们一般不会把我们所有的工程都发布到同一个tomcat下的,那样很乱,而且启动起来很久又容易出错的。有时,为了解决这个问题,我们会拷贝很多个tomcat,分别发布不同类型的工程,以免搞得太混了。但是tomcat多了,也占空间啊。

上面的方法,就可以解决这些问题。我们可以只使用少数几个tomcat,甚至只需要一个tomcat,但是发布的时候,指向到不同的目录,可以在本机盘上,建个目录专门来放发布的东西。根据以上配置Deploy path来管理发布。

三、配置Dynamic Web Project

       在Eclipse中如果工程不是Dynamic Web Project,无法发布到tomcat中,需要配置Project Facets。
       右键工程Properties,选择Project Facets菜单,然后把右边的Dynamic Web Module打勾,下方出现"Further Configuration Available",点击[配置Context root和Context directory,初始值:
Context root=工程名                   
Context directory=WebContent

        一般Context root的值不改,就是工程名称。而Context directory不会总是恰好是工程目录下的WebContent,修改Context directory的值为WEB-INF所在的目录,例如Maven项目,值为:src/main/webapp,保存以后,如果我们填的Context directory值在工程根目录下不存在,它会为我们生成这样的目录,而且目录下面还会新建META-INF,WEB-INF/lib,WEB-INF/web.xml勾选的话。

       整个配置好了,工程就是具有Dynamic Web Project特性,可以发布到tomcat的。
       发布好了,查看server.xml:
       自动给我们添加了:
        <Context docBase="mybatis" path="/mybatis" reloadable="true" source="org.eclipse.jst.jee.server:mybatis"/>
      查看发布的东西:

      D:\wspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\mybatis

当前的情况是,这个目录在Eclipse的工作去内,而且所在的目录位置有点隐秘啊,这个时候,可以配置一下上面提到的server.xml文件那个<Context>节点的docBase值,让它指向工程的绝对路径,如下:

       <Context docBase="D:/wspace/mybatis/WebContent" path="/mybatis" reloadable="true" source="org.eclipse.jst.jee.server:mybatis"/>

这样访问也是一样的,不过这个对项目的配置还是有一定要求得D:/wspace/mybatis/WebContent下有WEB-INF,其下有lib和classes。整个工程的源文件编译后的class必须放到这个classes下,而且lib目录需要有足够的jar包来运行工程,当然,WEB-INF/lib下面的jar包和tomcat/lib下的jar包是不能重复的,否则报错。

抱歉!评论已关闭.