「java部署软件」java程序怎么部署

博主:adminadmin 2023-01-17 04:51:10 391

今天给各位分享java部署软件的知识,其中也会对java程序怎么部署进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

要使用Java EE 部署工具 需要安装什么软件

JDK TOMCAT或WEBLOGIC或JBOSS

JDK 和 TOMCAT

Re: 如何启动sun java EE的部署工具?

发表于: 2007-9-4 下午5:12 原文: stars_79 回复

Deploytool 是Sun 公司的 sun application server附带的部署工具。需要下载并安装sun application server,并不是像书里面说的那样装好Java EE 5或者JBoss就有了。不过这个server可不是免费的哦,至少没有办法免费使用最新的版本。8.0应该是可以免费

Kodo EJB是一个支持对象/关系映射的框架,根据EJB3规范的要求,Kodo EJB除了支持在普通Java应用中提供轻量级的持久层框架之外,也支持在JAVA EE容器中使用满足重量级企业应用的需求,充分利用JAVA EE容器中提供的优越特性如容器治理事务、远程(Remote)访问。

基于Kodo EJB开发的应用支持使用EJB或者JCA标准接入到JAVA EE环境中:

JCAKodo EJB支持JCA1.0标准,因此基于Kodo EJB开发的应用可以和其他JCA资源一样轻松的发布到JAVA EE应用服务器上。

JNDI另外一种方式是将kodo.persistence.EntityManagerFactoryImpl的一个实例绑定到JNDI,然后通过查找JNDI的方式使用Kodo EJB应用。虽然这种方式需要开发者根据不同的JAVA EE容器编写代码才能完成,但是这种方式能够保持最大限度的JAVA EE容器可移植性,而且为在那些不支持JCA标准的JAVA EE容器中使用Kodo EJB创造可能。

本文中我们将以通过一个简单的例子,简单的讲解和演示如何在Weblogic9上通过JNDI方式来访问Kodo EJB应用。

环境预备

由于Kodo是基于注释机制的框架,我们必须使用JDK5.0完成开发工作。所以下载、安装Kodo之前,请确保您已经下载和安装了JDK5.0。

为了演示的需要,我们选择mysql数据库作为持久化的目标数据库,请大家自己到下载最新的MySQL数据库后安装。

安装Kodo

Kodo的最新版本是Kodo 4.0.0 Early Access 4,目前大家可以到去下载试用版本,下载时需要注册,你会得到30天的License。将下载的压缩文件解压到c:/kodo4目录下(后面将使用%KODO_HOME%来引用这个目录),打开%KODO_HOME%/bin/kodocmd.cmd文件,将其中的KODODIR设置为您的Kodo的安装目录,将JDKHOME设置为Java的安装目录。

安装Weblogic9

Kodo EJB在JAVA EE环境下运行时需要EJB容器支持EJB3标准,BEA最新发布的Weblogic9服务器就支持EJB3标准,因此我们选择Weblogic9作为演示时使用的目标服务器。大家可以到下载Weblogic9,然后将Weblogic9安装到自己的机器上。

[注]本文中的实例是实现可远程访问的EJB实例,因此你可以将Weblogic9安装到其他机器上,不过客户端调用的时候需要增加一些环境变量,请参考后面的说明。

开发Kodo EJB应用

由于篇幅的关系,我们直接使用《Kodo EJB:符合EJB3规范的持久层框架》一文中已经创建好的例子,包括环境预备、持久化类创建、数据库创建等工作,下面的章节中将尽量不再重复《Kodo EJB:符合EJB3规范的持久层框架》一文中已经提到的步骤,而是重点描述需要额外完成的工作。

在EJB开发中,我们通常都采用Session Façade设计模式,因此下面的例子也使用了这种设计模式来封装Kodo EJB应用。

我们使用一个无状态的Session Bean来封装对Book类的所有操作,由于Kodo EJB应用中需要开发者完成kodo.persistence.EntityManagerFactoryImpl的实例到JNDI的绑定,我们把这部分工作访在Session Bean中完成,下面是Session Bean的接口和实现的全部代码,请注重代码中增加的注释,他们有助于您了解Kodo EJB如何工作的。

BookBean类

下面是BookBean类的源代码,请大家非凡注重BookBean类中的setSessionContext方法,其中的代码将kodo.persistence.EntityManagerFactoryImpl的实例绑定到JNDI上。package org.vivianj.kodo.examples.ejb.stateless;

import java.rmi.RemoteException;

import java.util.Collection;

import javax.ejb.EJBException;

import javax.ejb.SessionBean;

import javax.ejb.SessionContext;

import javax.naming.InitialContext;

import javax.naming.NamingException;

import javax.persistence.EntityManager;

import javax.persistence.EntityManagerFactory;

import javax.persistence.PersistenceContextType;

import javax.persistence.Query;

import kodo.persistence.KodoPersistence;

import org.vivianj.kodo.examples.beans.Book;

/**

* BookBean 提供Session Bean的实现类

*/

public class BookBean implements SessionBean {

protected SessionContext ctx;

private EntityManagerFactory emf;

/**

* getBookById 根据Book对象的id属性查找、返回符合条件的Book对象

*

* @param id

* Book对象的编号

* @return 编号为id的Book对象

* @throws RemoteException

*/

public Book getBookById(int id) throws RemoteException {

/* 获得EJB的实体治理器 */

EntityManager em = emf

.createEntityManager(PersistenceContextType.EXTENDED);

try {

/* 开始事务 */

em.getTransaction().begin();

/* 处理业务 */

Book book = em.find(Book.class, id);

/* 结束事务 */

em.getTransaction().commit();

return book;

} finally {

/* 关闭EJB实体治理器 */

em.close();

}

}

/**

* updateBook 更新Book对象的信息

*

* @param book

* 需要更新的Book对象

* @throws RemoteException

*/

public void updateBook(Book book) throws RemoteException {

/* 获得EJB的实体治理器 */

EntityManager em = emf.getEntityManager();

try {

/* 开始事务 */

em.getTransaction().begin();

/* 处理业务 */

em.merge(book);

/* 结束事务 */

em.getTransaction().commit();

} finally {

/* 关闭EJB实体治理器 */

em.close();

}

}

/**

* createBook 方法用于持久化新的Book对象

*

* @param book

* 被持久化的Book对象

* @throws RemoteException

*/

public void createBook(Book book) throws RemoteException {

/* 获得EJB的实体治理器 */

EntityManager em = emf.getEntityManager();

try {

/* 开始事务 */

em.getTransaction().begin();

/* 处理业务 */

em.persist(book);

/* 结束事务 */

em.getTransaction().commit();

} finally {

/* 关闭EJB实体治理器 */

em.close();

}

}

public void deleteBook(Book book) throws RemoteException {

/* 获得EJB的实体治理器 */

EntityManager em = emf.getEntityManager();

try {

/* 开始事务 */

em.getTransaction().begin();

/* 处理业务 */

Query q = em.createQuery("delete from Book c where c.id = :id");

q.setParameter("id", book.id);

q.executeUpdate();

/* 结束事务 */

em.getTransaction().commit();

} finally {

/* 关闭EJB实体治理器 */

em.close();

}

}

public Collection getBooks(String queryString) throws RemoteException {

/* 获得EJB的实体治理器 */

EntityManager em = emf.getEntityManager();

try {

/* 开始事务 */

em.getTransaction().begin();

/* 处理业务 */

List allBooks = em.createQuery(queryString).getResultList();

/* 结束事务 */

em.getTransaction().commit();

return allBooks;

} finally {

/* 关闭EJB实体治理器 */

em.close();

}

}

public void setSessionContext(SessionContext ctx) {

this.ctx = ctx;

try {

/* 获取JAVA EE容器上下文环境 */

Context ejbContext = new InitialContext ();

Object o = null;

try{

/* 根据JNDI查找kodo.persistence.EntityManagerFactoryImpl的实例 */

o = ejbContext.lookup("ejb/kodo/emf");

}catch(Exception e){

/* 假如没有找到,尝试将kodo.persistence.EntityManagerFactoryIm

pl的实例绑定到JNDI上 */

EntityManagerFactory emfForEjb =

Persistence.createEntityManagerFactory(null);

ejbContext.bind("ejb/kodo/emf",emfForEjb);

}

if (o == null)

{

/* 假如没有找到,尝试再次查找 */

emf = (EntityManagerFactory)ejbContext.lookup("ejb/kodo/emf");

}

else {

emf = (EntityManagerFactory)o;

}

} catch (NamingException e) {

throw new RuntimeException(e);

}

}

public void ejbCreate() throws RemoteException {

}

public void ejbActivate() throws EJBException, RemoteException {

}

public void ejbPassivate() throws EJBException, RemoteException {

}

public void ejbRemove() throws EJBException, RemoteException {

}

public void unsetSessionContext() {

ctx = null;

}

}

BookHome接口package org.vivianj.kodo.examples.ejb.stateless;

import java.rmi.RemoteException;

import javax.ejb.CreateException;

import javax.ejb.EJBHome;

/**

* BookHome 类提供Session Bean的home接口

*/

public interface BookHome extends EJBHome {

public BookRemote create() throws CreateException, RemoteException;

}

BookRemote接口package org.vivianj.kodo.examples.ejb.stateless;

import java.rmi.RemoteException;

import java.util.Collection;

import javax.ejb.EJBObject;

import org.vivianj.kodo.examples.beans.Book;

/**

* BookRemote 类提供Session Bean的remote接口

*/

public interface BookRemote extends EJBObject {

public Book getBookById(int id) throws RemoteException;

public void updateBook(Book book) throws RemoteException;

public void createBook(Book book) throws RemoteException;

public void deleteBook(Book book) throws RemoteException;

public Collection getBooks(String queryString) throws RemoteException;

}

编写EJB描述符文件

如何使用Java网络启动部署软件

Java网络启动(Java Web Start (JWS) )可以实现在网络浏览器中运行具备全部特色的Java应用软件 Sun公司在 年三月发布的Java 就已经具备了对JWS的支持 自从J SE 版本以来 JWS就已经成为Java运行时环境(Java Runtime Environment (JRE) )的默认配置 不必再单独安装了 在这篇文章中 我将向您介绍这一重要技术

技术

JWS是与网络浏览器相结合的应用软件 当用户点击链接的时候就会指向一个Java网络启动协议(Java Neork Launching Protocol (JNLP) )文件 然后浏览器自动启动JWS 接着下载 缓存并运行基于Java技术的应用软件

在JWS背后的技术是JNLP及其API 它们是在Java团体进程(Java Community Process)中开发的 JWS实际上是JNLP规范的一个参考实现 JNLP技术定义了一个标准的文件格式 该格式描述了如何调用一个JNLP文件

既然安装链接可以作为普通的HTTP URL的链接 那么您就可以通过网页来检查客户端是否安装了JWS 您可以在IE中通过以下代码来检查

SCRIPT LANGUAGE= VBScript

on error resume next

If isIE = true Then

If Not(IsObject(CreateObject( JavaWebStart isInstalled ))) Then

javawsInstalled =

Else

javawsInstalled =

End If

If Not(IsObject(CreateObject( JavaWebStart isInstalled ))) Then

javaws Installed =

Else

javaws Installed =

End If

If Not(IsObject(CreateObject( JavaWebStart isInstalled ))) Then

javaws Installed =

Else

javaws Installed =

End If 

End If

/SCRIPT

开发

开发部署在JWS上的软件和开发独立运行的软件在Java 平台上是基本相同的 比如 程序的起点都是以下的标准代码

public static void main(String[] argv)

然而 为了支持网络部署 也就是实现自动下载和调用软件 并且保证软件在一个安全的沙盒中运行 还需要一些额外的考虑 包括

应用软件必需作为JAR文件集合来使用 所有的应用软件资源 比如文件 图片都必需存储在JAR文件中 而且它们都必需使用Java 平台的getResource机制来引用 应用软件可以使用System exit调用 进行不受限制地访问系统的软件需要通过签名的JAR文件来使用 而且JAR文件中所有的项目都必需经过签名 如果软件要运行在一个安全沙盒中 那么它必需遵循以下的限制; 不能进行本地磁盘访问 所有的JAR文件都必须从同一个主机下载 只能和下载JAR文件的主机之间建立网络连接 不能安装安全管理器 不能使用本地类库

对系统属性的访问受到限制 对于JNLP中定义了的系统属性 应用软件可以进行读/写操作 并且对于相同的属性集合具备和applet一样的只读权限

安全

JWS是构建于Java 平台之上的 Java 平台提供了一个全面的安全架构 在Java 版中 JWS则提供了更加强大的安全特色 比如代码签名

在默认状态下 通过JWS调用的应用软件将运行在一个受到限制的环境中(一个 沙盒 ) 它们对本地计算资源的访问 比如存储设备和本地网络 是有限的 这样 JWS就保证了下载的潜在的不可信任的软件不会危及到本地文件或网络

当然 应用程序也可以请求不受限制的本地系统访问 在这种情况下 当该软件第一次调用时 JWS将显示安全警告对话框 安全警告的内容包含软件开发者的信息

如果一个应用软件包含了一个或多个经过签名的JAR文件 JWS将会验证这些JAR文件在签名后是否发生过变化 如果数字签名的认证失败 那么JWS就不会运行该软件 因为它们已经被第三方修改过了 通过在JNLP文件中添加以下的设置 一个应用软件可以请求完整的权限

security

all permissions/

/security

JNLP 文件

JNLP是一个和JWS紧密相关的概念 它经常可以和术语 网络启动 相互替代使用 实际上 JNLP是一个规定了JWS应用软件如何启动的协议 JNLP中的包含了诸如JAR包文件的位置 应用软件主要类的名称 以及程序的其它一些参数 在适当配置的浏览器中 JNLP文件是传递给JRE的 然后JRE将会下载应用软件到用户的机器上并开始执行

一个JNLP文件不包含任何二进制数据 实际上它包含的URL指向所有的二进制数据和二进制代码资源 这些文件还可以指向其他的JNLP文件 它们被称为扩展描述符 一个扩展描述符通常描述了运行软件所必需的组件 在扩展描述符中描述的资源将会成为应用软件类路径的一部分 这样 常用的功能只需要描述一次即可 以下的例子是一个常见的JNLP文件

?xml version= encoding= UTF ?

jnlpcodebase= _app

information

titleHello world!/title

vendorMy Web Company/vendor

icon /

offline allowed/

/information

resources

j se version= + /

jar /

/resources

application desc main class= helloworld Hello /

/jnlp

这个JNLP文件描述了如何调用名为Hello的程序 在JNLP文件中指定了需要 或更高版本的Java来运行该程序 同时还有一些与程序相关的信息 这些信息都会在用户下载的过程中显示

如果您希望了解更详细的JNLP协议和文件格式 可以参考这个官方规范

结论

JWS提供了一种与平台无关的 安全的而且强大的部署技术 开发者只需要将应用软件部署在网络服务器上就可以为最终用户提供全部的功能 而最终用户也只需要使用网络浏览器就可以运行所需的应用软件 而且永远是最新的版本

JWS的一个主要优点是它克服了Java插件和不同Java虚拟机的兼容性问题 但是 使用网络启动的程序却不能像applet一样简单地和浏览器进行通讯

lishixinzhi/Article/program/Java/hx/201311/26465

编写java程序需要安装哪些软件?

 1.java环境

想要从事Java开发,那么Java运行环境肯定是你首先需要安装的软件,同学们可以自行去百度上搜索Java进入到官网下载即可,Java环境的安装和配置教程之前有过介绍,同学们点击相关阅读即可。

2.开发编辑器

第二个就是我们经常会使用的编辑器了,Eclipse,jbuilder,vscode等等,哪个你用着舒服就用哪个,功能上说实话现在的编辑器都差距不大。当然如果你说你就喜欢用记事本开发也可以。

3.浏览器

有同学会问为什么还要浏览器呢?这是因为你学习过程肯定会遇到不少问题,与其自己钻牛角尖不如去百度一下,看一看别人是怎么解释的,别人遇到这样的问题是如何解决的你会豁然开朗。

如何将写好的java程序部署到服务器上教程

1.先安装j2sdk

我安装路径是:D:\Program Files\Java\j2sdk

2.再安装eclipse

Eclipse是绿色软件,不需要安装,把下载回来的eclipse压缩包解压就可以了

我安装的路径是:D:\Program Files\Java\eclipse

3.安装tomcat

下载回来的是一安装文件,按照安装提示进行就可以了

我安装的路径是:D:\Program Files\Java\Tomcat

4.安装eclipse插件

中文包

直接将压缩包NLpack-eclipse-SDK-3.0.x-win32内features和plugins两文件夹内的内容解压到eclipse文件夹内同名文件夹就可以了。

Tomcat插件

将压缩包tomcatPluginV3解压,把plugins文件夹内的内容解压到eclipse文件夹内同名文件夹就可以了。

三.环境配置

1.系统环境变量配置

右击“我的电脑”-高级-环境变量,

设置JAVA_HOME变量指向其安装的目录“D:\Program Files\Java\j2sdk”;

TOMCAT_HOME变量指向其安装的目录“D:\Program Files\Java\Tomcat”;

PATH变量中含有“%JAVA_HOME%\bin;”;

CLASSPATH变量含有“%JAVA_HOME%\lib\tools.jar;”;

2.eclipse中java运行环境的配置

在eclipse主窗口中,“窗口”-首选项-java-已安装的JRE,选我们已经安装的j2sdk

3. 配置Sysdeo Tomcat 插件

在eclipse主窗口中,“窗口”-首选项-tomcat,tomcat version 选 version 5.x(我们安装的版本),tomcat home 处填我们安装tomcat的路径,这里就是D:\Program Files\Java\Tomcat。

切换到Advanced选项,在tomcat base处再填我们安装tomcat的路径,这里就是D:\Program Files\Java\Tomcat。

切换到JVM Setting选项,确定jre是你已经安装的j2sdk版本,我们这里选j2sdk。

切换到Tomcat Manger App,为管理界面增加一个用户。

最后按应用按钮,然后在确定。

检查配置是否成功,只需在eclipse主窗口中,按tomcat运行按钮,然后在浏览器里的地址栏里输入,如果出现tomcat 的页面,那就证明配置成功了。

四.编写程序

1.创建一个Tomcat项目

右击“包资源管理器”窗口中的空白处,新建-Tomcat Project, 在项目名中填写项目名字,在这里我填tomcat_test,点击“完成”即可。

2.创建一个JSP页面

在包资源管理器中,右击“tomcat_test”,新建-文件, 在文件名中填写HelloWorld.jsp(扩展名不能缺),在文本编辑窗口输入如下代码:

html

head

/head

body

h1Hello World/h1

/body

/html

然后保存。

五.部署JSP页面

这里的部署我使用比较简单的方法:首先,把上述放在eclipse的workpalce目录的tomcat_test目录拷到tomcat目录下的webapps目录里,然后对conf目录里的server.xml进行文本编辑,在/engin前加入如下host元素:

Host name="*.*.*.*" debug="0" appBase="webapps"

unpackWARs="true" autoDeploy="true"

/Host

然后保存,接着启动tomcat,那样只要你在浏览器窗口中输入http://*.*.*.*:8080/tomcat_test/HelloWorld.jsp浏览器就会显示“Hello World”,这样说明你的jsp页面部署发布成功,别人就能在网上访问你的页面了。

(*.*.*.*是指安装了tomcat服务器的主机IP地址)

六.几点说明

(1)选j2sdk而不是jre,是因为j2sdk除了有java的运行环境还有java程序所需要的类,而jre只有运行环境。

(2)由于软件本身升级比较频繁,经常需要重新设置使用的环境变量或者重新配置,例如把JDK版本从1.3升级到1.4,即JDK目录名可能要从“j2sdk1.3”改为“j2sdk1.4”,如果是这样的话,那么eclipse可能会无法再启动了(它要从环境变量中寻找JAVA_HOME变量,而JAVA_HOME变量值已经从“j2sdk1.3”改为“j2sdk1.4”了)。同理, jakarta-tomcat这个软件升级比较频繁,现在结合eclipse来使用Tomcat的,那么每次Tomcat升级,可能都要在eclipse中重新设置一下Tomcat的安装目录。如果按照传统的安装方法,我们每次升级软件都要进行设置或配置,这样非常麻烦。对于此类问题,解决的方法很简单,只要把默认的软件安装目录名去掉版本号即可(如果担心忘记版本号,只要在目录中添加一个readme文件加以说明即可)。上述的安装过程就使用了这种方法。

什么是Java?Java是用来做什么的?

我们常常会听说,Java是世界第一语言,很多应用软件的开发都离不开Java。Java真的这么强大吗?其实,Java的内容很丰富,可以实现的功能也有很多。

我们常常说的Java,首先它是一种计算机编程语言,程序员用它来和计算机交流,把要求和设想用Java语言表达出来,这个过程就是我们所说的使用Java编程,所以我们说Java是一种计算机编程语言。为了让计算机看懂,Java会有一系列的规则和约定,这些就是Java的语法。

其次,Java是一种软件开发平台。所谓软件开发简单地理解为:编程的结果是软件或者程序,而编程的过程就是软件开发。

那什么是开发平台?在软件开发的过程中,我们需要很多的工具来辅助我们的工作。我们把编程的环境和相应的辅助工具统称为开发环境,开发平台就是用来提供这个开发环境的。

而Java作为一种开发平台,不单纯是一个编程的语言,它自身提供了一系列开发Java所需要的环境和工具,来进行编译、解释、文档生成、打包等,比如:javac.exe、javadoc.exe等等,所以我们讲Java是一个开发平台。

另外,Java是一种软件运行平台。Java本身提供Java软件所需要的运行环境,Java应用可运行在安装了JRE(JavaRuntimeEnvironment)的机器上,所以我们说Java是一个运行平台。JRE:JavaRuntimeEnvironment,Java运行环境。

Java也是一种软件部署环境。简单地讲,部署就是安装,就是把软件放置到相应的地方,并且进行相应的配置(一般称作部署描述)让软件能够正常运行起来。

Java是一种软件部署环境,Java本身是一个开发的平台,开发后的Java程序也是运行在Java平台上的。也就是说,开发后的Java程序也是部署在Java平台上的,这个尤其在后面学习JEE(Java的企业版)的时候,体现更为明显。

看完以上内容,相信你已经对什么是Java有了一定的了解。Java需求大,应用领域广,有着良好的薪资待遇及发展空间,因此受到不少IT人士的热烈追捧。

免责声明:内容来源于公开网络,若涉及侵权联系尽快删除!

JAVA如何部署GUI程序

运行Java程序(SWING或SWT的桌面程序)可以直接执行。class文件或将所有的。class文件及相关的其他文件压缩成。jar文件,然后使用javaw -jar my.jar来运行程序(其中my.jar是一个jar文件名,可以是任何指定的jar文件)。但在windows下,用户习惯直接运行一个exe来执行程序。在网上有很多程序可以将my.jar或。class文件直接转换成exe文件。但很多都是将jar或。class文件放到exe里成,这样不太方便。有些工具,如javalauncher可以使用一个exe程序(用c语言写的)来调用jar文件。但有时需要在运行程序之间做些其他的工具,例如,在客户端动态从服务端下载最新版本的程序。因此,在本文将使用delphi2009实现一个简单的可以调用jar文件的程序,读者可以对这个程序进行任何扩展,本文还提供了该程序的源代码和exe文件。

使用delphi建立一个VCL工程。在本程序中不需要form,因此,可以将默认生成的form删除。实际上,我们只需要调用ShellExecute方法就可以通过javaw命令来执行jar文件,代码如下:

shellexecute(GetActiveWindow, 'open','javaw', '-jar my.jar', '', SW_NORMAL);

其中GetActiveWindow方法获得当前窗口的句柄。在本程序中使用了一个config.ini文件来指定要执行的jar文件,实现的完整代码如下:

program launcher;

uses

Forms,

windows,shellapi, inifiles, sysUtils;

{$R *.res}

var

ini: tinifile;

JarFile: String;

begin

Application.Initialize;

ini := tinifile.Create(extractfilepath(application.ExeName) + 'config.ini');

JarFile := ini.ReadString('config', 'JarFile', '');

shellexecute(GetActiveWindow, 'open','javaw', PWideChar('-jar ' + JarFile), '', SW_NORMAL);

ini.Free;

Application.Run;

end.

在和exe相同的目录下建立一个config.ini文件,内容如下:

[config]

JarFile = jars\swt.jar

其中swt.jar文件是执行的jar文件,要放在当前目录的jars目录中。现在的目录结果如下:

launcher.exe

config.ini

jars\swt.jar

其中launcher.exe和config.ini也被包含在本文的下载文件中。读者只需要修改config.ini文件中的相应的jar文件名即可。也可以将launcher.exe改成其它的文件名。还有就是要修改launcher.exe文件的图标,可以直接在delphi2009(低版本的delphi也可以,最好7.0以上)中改,也可以找一些编辑二进制资源的程序,直接打开launcher.exe文件,修改其中的图标。

当然,本程序也可以使用任何可生成原生可执行文件的编程语言开发,如C、C++等。

OK,现在就可以通过双击launcher.exe文件来调用jar包了。要想对launcher进行扩展,就直接修改源代码吧。其实这个实现是非常非常地简单!!!

关于java部署软件和java程序怎么部署的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。