`
ninglei
  • 浏览: 1869 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

转 不想用Myeclipse 继续用eclipse 暴露式发布调试Jboss

阅读更多
使用Eclipse Java EE版本开发Web应用程序时, Eclipse老是将需要部署的内容打成war包。这在开发时, 是个没有必要的开销,因为大多数Web Server(或App Server)都支持exploded部署方式。
   要让Eclipse部署的时候以exploded方式部署,其实没有想象中复杂。实际上,从Eclipse的Console中可以窥见其工作端倪(以Jboss为例,其它服务器类似):
Buildfile: /xxx/eclipse/plugins/org.eclipse.jst.server.generic.jboss_1.6.1.v200904151730/buildfiles/jboss323.xml
deploy.j2ee.web:
      [jar] Building jar:
/home/brian/Dev/Java/eclipse/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/ssh.war
     [move] Moving 1 file to /home/brian/Dev/Java/JBoss/jboss-6.0.0.20100216-M2/server/default/deploy
   可以看到, Eclipse环境去执行了一个Ant脚本--jboss323.xml, 具体来说是执行了其中的deploy.j2ee.web target。也正是这个target完成了war包的制作(jar任务)和部署(move任务)。如果我们要修改Eclipse的行为,需要做的事情就是修改这个target,让它只作简单的文件拷贝:
  
<target name="deploy.j2ee.web">
        <property name="deploy.dir" location="${server.publish.dir}/${module.name}.war" />
        <mkdir dir="${deploy.dir}" />
        <copy todir="${deploy.dir}">
            <fileset dir="${module.dir}">
                <include name="**/*.*"/>
                <exclude name="**/*.war"/>
            </fileset>
        </copy>
       
        <sleep seconds="${pause.deploy}"/>
       
    </target>

   现在部署应用就会在Console中看到如下信息:
Buildfile: /xxx/eclipse/plugins/org.eclipse.jst.server.generic.jboss_1.6.1.v200904151730/buildfiles/jboss323.xml
  deploy.j2ee.web:
       [copy] Copying 1 file to /home/brian/Dev/Java/JBoss/jboss-6.0.0.20100216-M2/server/default/deploy/ssh.war
  BUILD SUCCESSFUL
   需要说明的是:
  如果你之前以war包形式部署过, 那么需要在服务器的部署目录(比如JBoss的server/default)下,将war包移除,否则创建文件夹时会出错。
如果需要的话(一般如此:)),可以同时将<sleep>任务一并去掉。它会产生一段时间(10秒)的延时,作为本地开发,应该无须忍受这个延时。
这种改动,并不能控制Eclipse执行脚本的时机,只是修改了脚本本身而已。因此,修改了某个文件(比如jsp文件)并不会立即生效(MyEclipse会产生这个效果), 而是需要等待Eclipse执行了上述脚本, 把修改后的文件部署到服务器才能生效。幸运的是,我们可以服务器的部署时间: 在Server面板中双击要修改的server, 在出现的界面中展开Publishing, 然后修改Publishing interval (in seconds)即可。

   关于Ant脚本,严格地讲,你最好同时修改undeploy.j2ee.web target, 因为*.war已经不是一个文件,而是文件夹了,修改如下:

<target name="undeploy.j2ee.web">
        <!--
        <delete file="${server.publish.dir}/${module.name}.war" failonerror="false"> </delete>
        -->
        <delete dir="${server.publish.dir}/${module.name}.war" failonerror="false"> </delete>
        <sleep seconds="${pause.undeploy}"/>
    </target>
  类似地,如果你的项目涉及到ejb或ear,你可以修改其它几项对应的target。
分享到:
评论

相关推荐

    myeclipse 远程调试jboss as7或者jboss eap6

    本篇将详细介绍如何在MyEclipse中远程调试JBoss AS7或JBoss EAP6,无论是在Windows还是Linux环境下。 首先,我们需要了解远程调试的基本原理。远程调试通常依赖于Java的调试接口(Java Debug Wire Protocol, JDWP)...

    MyEclipse中配置JBoss

    【标题】:“MyEclipse中配置JBoss” 在IT行业中,MyEclipse是一款深受开发者喜爱的集成开发环境(IDE),尤其对于Java EE项目开发来说,它提供了强大的支持。而JBoss则是一个开源的应用服务器,广泛用于部署和管理...

    myeclipse工程转eclipse工程

    - 使用Eclipse自带的Library Manager功能来管理这些依赖,使项目更加整洁。 #### 三、解决常见问题 1. **项目无法识别为Web项目**:检查项目特性设置是否正确,确保选择了“Dynamic Web Module”。 2. **编译...

    myeclipse项目转换成eclipse

    MyEclipse与Eclipse都是广泛使用的Java开发工具,尽管它们都基于Eclipse平台构建,但在项目结构和配置上存在一定的差异。MyEclipse项目中的Web工程通常使用`WebRoot`作为其根目录,而Eclipse则默认使用`WebContent`...

    myeclipse eclipse集成tongweb开发

    ### MyEclipse Eclipse集成TongWeb开发知识点详解 #### 一、TongWeb5.0_MyEclipseTool简介 TongWeb5.0_MyEclipseTool是一款专为MyEclipse环境设计的插件,旨在帮助开发者更高效地利用TongWeb5.0应用服务器进行J2EE...

    myeclipse和eclipse搭建安卓开发环境

    使用eclipse搭建安卓开发环境的步骤包括: 1. 安装JDK 2. 安装eclipse 3. 安装ADT 4. 配置安卓开发环境 5. 重启eclipse 使用myeclipse或eclipse搭建安卓开发环境需要安装JDK、myeclipse或eclipse、ADT,并进行相应...

    MyEclipse+JBoss开发EJB.doc

    Jboss是一个流行的开源应用服务器,它支持EJB,且在本例中使用的是Jboss 4.x版本。配置步骤包括: 1. 打开MyEclipse的首选项设置(Preferences)。 2. 选择MyEclipse -&gt; JBoss -&gt; JBoss 4.x。 3. 启用Jboss服务器,...

    Myeclipse中配置 jboss 图解

    ### MyEclipse中配置JBoss图文教程 #### 前提条件 - 已经配置好Java环境。 - 已经安装了MyEclipse插件。 #### 步骤一:下载与解压JBoss 1. **下载JBoss**: - 访问官网 [http://www.jboss.org/]...

    JBoss在MyEclipse中的配置及说明

    将JBoss与MyEclipse结合使用,可以提供一个高效且方便的开发和调试环境。本文将深入探讨如何在MyEclipse中配置JBoss服务器,以及相关参数的含义。 首先,配置JBoss服务器在MyEclipse中的步骤如下: 1. **安装JBoss...

    MyEclipse_JBoss4.0开发EJB组件环境配置(入门调试级)

    **MyEclipse与JBoss 4.0集成开发EJB组件环境配置详解** 在Java企业级应用开发中,Enterprise JavaBeans (EJB) 是一种核心技术,它为开发者提供了构建可伸缩、安全且可移植的分布式应用程序的能力。MyEclipse作为一...

    myeclipse和eclipse的web项目导入

    但是,如果我们想将 MyEclipse 中创建的 Web 项目导入到 Eclipse 中,需要进行一些额外的配置。首先,我们需要将项目转换为 faceted 项目形式。这可以通过右键点击项目 -&gt; 属性 -&gt; 项目 Facets -&gt; 转换为 faceted ...

    MyEclipse 6.0与Eclipse

    《MyEclipse 6.0与Eclipse》这本书主要探讨了两种广泛使用的Java集成开发环境(IDEs):MyEclipse 6.0和Eclipse。这两种工具在Java开发领域中占据着重要的地位,尤其对于企业级应用的开发,它们提供了丰富的功能和...

    在eclipse中配置 jboss 图解

    在本文中,我们将详细介绍如何在Eclipse集成开发环境中配置JBoss应用服务器,这是一个关键步骤,对于Java开发者来说尤其重要,因为JBoss是流行的开源应用服务器,常用于部署和管理Java应用程序。首先,确保你的Java...

    myeclipse上安装sae-eclipse插件

    首先,SAE Eclipse插件是新浪云为了方便开发者在本地环境使用MyEclipse进行SAE应用开发而提供的工具。它允许开发者在MyEclipse中直接创建、上传、调试和管理SAE上的项目,极大地提升了开发的便捷性。 要安装SAE ...

    将java项目从myeclipse导入eclipse

    在这个步骤中,我们需要使用 Eclipse 的 import 功能,将 MyEclipse 项目导入进来。具体步骤为:在 Eclipse 中,选择 File -&gt; Import -&gt; Existing Projects into Workspace,然后选择 MyEclipse 项目的路径,最后...

    myeclipse转换到eclipse.doc

    - 不理会警告,继续安装,完成后重启Eclipse。 - 进入"Window" -&gt; "Preferences" -&gt; "pydev" -&gt; "Interpreter Python",设置Python解释器的路径(python.exe所在目录)并保存,至此PyDev插件安装完毕。 转换...

    MyEclipse+JBoss配置说明

    MyEclipse+JBoss配置说明 本文档主要介绍了如何在MyEclipse中配置JBoss服务器,以便实现web项目...本文档主要介绍了MyEclipse中JBoss配置的详细步骤和知识点,旨在帮助开发者快速掌握MyEclipse的使用方法和配置技巧。

    myeclipse工程转为eclipse工程,发布到Tocmat服务器

    在IT行业中,开发人员经常需要在不同的集成开发环境中工作,比如MyEclipse和Eclipse。这两个都是Java开发的常用工具,但它们之间的项目结构和配置存在差异。本篇将详细介绍如何将一个MyEclipse工程转换为Eclipse工程...

    MyEclipse和Eclipse的相互部署

    在软件开发领域,MyEclipse和Eclipse都是广泛使用的Java集成开发环境(IDE)。MyEclipse是Eclipse的一个商业版本,提供了更多的企业级功能,如数据库工具、Web服务工具以及对Java EE、Spring等框架的集成支持。本篇...

Global site tag (gtag.js) - Google Analytics