用NetBeans IDE 实现远程部署

原创 2007年09月03日 18:46:00
 NetBeans IDE 5.5.1 目前集成了以下几种服务器
  • BEA Weblogic Server 9

  • Jboss Application Server

  • Sun Java System Application Server

  • Tomcat 5.0 或者Tomcat 5.5

这些服务器可以直接添加在NetBeans 中运行环境下的服务器列表中。添加服务器可以通过菜单“工具”-〉“运行时”,打开“运行环境窗口”。鼠标右键选择“服务器”-〉“添加服务器”。

但是目前这种方式只能是添加本地的服务器。而通常软件开发中,真正部署程序的服务器不会是开发程序的电脑。因为,开发中频繁开启和停止电脑或者服务器很常见,但是作为测试的环境或者面向用户的环境一定要保持相对稳定。


()Java应用程序远程部署在服务器的通常做法:


把应用程序远程部署在服务器的做法一般是这样,以Sun application Server 9为例。

1。在NetBeans IDE中通过“生成项目”来进行编译,打包,最后会在项目的dist目录下生成包文件,比如ear, jar, war, 或者rar 文件

2。启动远程应用服务器。在本地通过浏览器访问远程应用服务器(remoteserver)的管理界面(http://remoteserver:4848).

3。输入管理员用户名和密码。Sun application Server 9 缺省的管理员用户名和密码是admin/adminadmin

4。根据应用程序类型,选择不同的类别

应用程序类型

包后缀名

企业应用程序

EAR

Web 应用程序

WAR

EJB模块

JAR

连接器模块

RAR


5。下面以部署Web 应用程序为例,在Sun Application Server的管理界面中,选择"应用程序"下的"Web应用程序",在“要上载的文件”中输入目录及文件名,点击“下一步”




部署 Web 模块(步骤 2,共 2 步)”中,点击“完成




在“Web 应用程序”下可以可到已经部署成功的“ RemoteDeploy”项目


6。要取消项目部署,选中“RemoteDeploy”项目,点击”取消部署”按钮.




以上的远程部署都是在 NetBeans IDE开发环境之外进行,下面介绍一个方法,把远程部署的功能集成到NetBeans IDE开发环境中来,这样在NetBeans IDE中进行远程部署和取消部署,只需要几下鼠标操作,而根本不需要使用登录远程服务器的管理界面。

()NetBeans IDE中通过修改build.xml实现远程部署

这个方法使用到Sun Application Server 9上的 sun-appserv-ant.jar文件,在这个jar文件中,有我们需要的asant命令集合。asantANT的功能相似,用来实现Java程序的编译,打包等功能,不过asant针对的是Sun Application Server 。为方便起见,在本地机器上也安装Sun Application Server 9,这样可以比较方便地找到一些需要的库文件。

1。在NetBeans IDE中创建示例项目“ RemoteDeploy”后,我们选择这个项目部署在“Sun Java System Application Server 9”上,当然,这时候,这个服务器是本地的。鼠标右键选择“ RemoteDeploy”项目-〉“属性”,在“运行”栏目下,可以查看并改变部署的服务器。



2。在本地电脑上建立一个passwordfile.txt 文件来保存远程服务器上管理员的密码,假设passwordfile.txt放在C:/Sun/AppServer9/下。passwordfile.txt文件内容如下:

 

3。在NetBeans IDE, 点击“文件”窗口, 打开build.xml文件。build.xml文件除了导入一个“build-impl.xml”文件外,内容基本为空。而 build-impl.xml 定义了ant所需要的几乎所有的参数和任务。通常建议开发者不要修改build-impl.xml,而把修改放在build.xml 中,并且可以利用或者覆盖build-impl.xm中已经定义好的一些任务。

 

下面是修改后的build.xml。去掉了原有的注释内容和build-impl.xml的导入, 重新定义了sun-appserv-deploy和sun-appserv-undeploy, 新加了两个任务“as-remote-deploy” 和“as-remote-undeploy”

 

<?xml version="1.0" encoding="UTF-8"?>
<!-- You may freely edit this file. See commented blocks below for -->
<!-- some examples of how to customize the build. -->
<!-- (If you delete it and reopen the project it will be recreated.) -->
<project name="RemoteDeploy" default="default" basedir=".">
    
<description>Builds, tests, and runs the project RemoteDeploy.</description>
        
<property name="sun.appserver.ant.jar" value="c:/Sun/AppServer9/lib/sun-appserv-ant.jar"/>
        
<property name="admin.cli.jar" value="c:/Sun/AppServer9/lib/admin-cli.jar"/>
        
<property name="admin.password.file" value="C:/Sun/AppServer9/passwordfile.txt" />
        
<property name="asinstall.dir" value="C:/Sun/AppServer9" />
        
<property name="war.ear.file" value="E:/mymodules/RemoteDeploy/dist/RemoteDeploy.war" />
        
        
<target name="sun-taskdef">
            
<taskdef name="sun-appserv-deploy" classname="org.apache.tools.ant.taskdefs.optional.sun.appserv.DeployTask">
                
<classpath>
                    
<pathelement location="${sun.appserver.ant.jar}" />
                    
<pathelement location="${admin.cli.jar}" />
                
</classpath>
            
</taskdef>
            
<taskdef name="sun-appserv-undeploy" classname="org.apache.tools.ant.taskdefs.optional.sun.appserv.UndeployTask">
                
<classpath>
                    
<pathelement location="${sun.appserver.ant.jar}" />
                    
<pathelement location="${admin.cli.jar}" />
                
</classpath>
            
</taskdef>
        
</target>   
        
    
<target name="as-remote-deploy" depends="sun-taskdef">
        
<sun-appserv-deploy file="${war.ear.file}"
                            name
="RemoteDeploy"
                            force
="true" 
                            precompilejsp
="false"
                            verify
="false"
                            upload
="true" 
                            user
="admin"
                            passwordfile
="${admin.password.file}"
                            host
="remoteserver" 
                            port
="4848" 
                            asinstalldir
="${asinstall.dir}"/> 
                            
    
</target>
    
    
<target name="as-remote-undeploy" >
        
<sun-appserv-undeploy 
                
name="RemoteDeploy"
                user
="admin"
                passwordfile
="${admin.password.file}"
                host
="remoteserver" 
                port
="4848" 
                asinstalldir
="${asinstall.dir}"/>
                
    
</target>    
</project>

 

sun-appserv-deploy sun-appserv-undeploy 的参数解释,可以参考文档“Application Server asant Tasks ” (http://docs.sun.com/app/docs/doc/819-3659/beaep?l=zh&a=view)


4。在NetBeans 中的”文件”tab中,点开“build.xml”,可以看到任务“as-remote-deploy”和“as-remote-undeploy”



 

5启动远程服务器remoteserver上的”Sun Application Server 9”.


6。鼠标右键选择“as-remote-deploy”-〉“运行目标”,就可以把项目“RemoteDeploy”部署在远程服务器“remoteserver”上。在NetBeans IDE输出窗口中可以看到以下内容

 


7。鼠标右键选择“as-remote-undeploy”-〉“运行目标”, 就可以从远程服务器”remoteserver”上取消项目“RemoteDeploy”的部署。在NetBeans IDE输出窗口中可以看到以下内容

()NetBeans IDE中实现远程部署


NetBeans 5.5.1中最简单的远程注册办法是通过“服务器管理”界面。选择菜单“工具”-〉“服务器管理器”。 点击"添加服务器".




只需要四步:

1。在“平台文件夹位置”中,选择“注册远程域”。点击“下一步”



2。输入主机名(主机名或主机IP地址)和端口号,点击“下一步”。在输入主机名的过程中,NetBeans会判断远程主机及端口是否有效。



3。输入远程主机的管理员用户名和管理员口令。点击“完成”





 

使用Netbeans远程调试服务器java代码

首先,JAVA自身支持调试功能,并提供了一个简单的调试工具--JDB,类似于功能强大的GDB,JDB也是一个字符界面的调试环境,并支持设置断点,支持线程线级的调试。 编写Java程序: [jav...
  • zmcssx
  • zmcssx
  • 2015年03月02日 17:03
  • 1053

NetBeans的远程Linux C开发实践

一直以来总觉得NetBeans生活在Eclipse的阴影下,同样做为一款不错的基于Java开发的IDE却走着完全不同的发展道路。可能是由于之前我一直较多的使用Java的缘故,所以Eclipse一直是我...
  • educast
  • educast
  • 2015年01月31日 09:07
  • 2547

安装配置Tomcat并在NetBeans中使用

Tomcat与IIS本质上是没有太大区别的,他们都作为Web服务器为Web程序提供支持,不同的是IIS是作为.net的web服务器,Tomcat是作为Java的web服务器。而所谓的web服务器我们不...
  • a1314517love
  • a1314517love
  • 2013年01月02日 21:33
  • 16150

使用 NetBeans IDE 在远程 Web 服务器上部署 PHP 应用程序

通常,实际的 PHP 应用程序在远程服务器上运行,并通过文件传输协议 (File Transfer Protocol, FTP) 进行访问。要在远程服务器上部署 PHP 应用程序,您将需要向托管提供商...
  • ljguo212
  • ljguo212
  • 2012年01月18日 15:56
  • 492

使用Qt Creator作为Linux IDE,代替Vim:实现两台Linux电脑远程部署和调试(一台电脑有桌面系统,一台电脑无桌面系统)

考虑到Linux环境下编写C/C++程序,如果使用原生的Vim编辑和单步断点调试比较麻烦,不利于新手使用,所以笔者尝试使用Qt实现两台Linux电脑远程部署和调试。本篇目的是帮助大家一劳永逸,解决痛点...
  • libaineu2004
  • libaineu2004
  • 2017年03月16日 15:22
  • 1728

NetBeans IDE中实现页面跳转的 LoginFrame类

/*  * To change this license header, choose License Headers in Project Properties.  * To change th...
  • qq_29250143
  • qq_29250143
  • 2015年09月17日 19:24
  • 874

在NetBeans IDE 中使用Java DB数据库

本文档介绍如何在 NetBeans IDE 中快速建立与 Sun 的 Java DB(该数据库基于 Apache Derby 数据库)的连接。建立连接后,您可以容易地在 IDE 中使用...
  • SHMILYRINGPULL
  • SHMILYRINGPULL
  • 2011年08月01日 16:52
  • 2452

windows下安装NetBeans IDE & 配置C++编译环境

NetBeans IDE 安装需要先安装JavaSDK。 可以直接在oracle官网上下载JavaSDK和NetBeans捆绑的软件包: 添加C++支持的方法和安装编译工具的方法: 转自...
  • wdhtsh81
  • wdhtsh81
  • 2016年05月21日 18:17
  • 1494

在 NetBeans IDE 中调试 PHP 源代码

目录 准备工作启用 XDebug如何使用 XDebug 进行 PHP 调试调试区域窗口调试会话样例调试会话 使用其他监视 PHP 和 HTML 混合用例 要学习本教程,您需要具备以下软...
  • ztclx2010
  • ztclx2010
  • 2011年10月31日 17:21
  • 1315

NetBeans IDE PHP 编辑器:简要概述

准备工作 要在适用于 PHP 的 NetBeans IDE 中成功开发和部署 PHP 应用程序,您需要为进行 PHP 开发安装并配置所有必需的软件。 NetBeans IDE PHP 编辑器布...
  • ljguo212
  • ljguo212
  • 2012年01月18日 15:20
  • 648
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用NetBeans IDE 实现远程部署
举报原因:
原因补充:

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