javafest的简单介绍

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

本文目录一览:

1、java项目导出为jar文件 运行jar文件会报错。 缺少我已经加好的包2、FEST工具是什么意思3、Java web start入门

java项目导出为jar文件 运行jar文件会报错。 缺少我已经加好的包

你导出的jar包要用到其他jar包,那么你导出的jar包里有这样一个文件MANIFEST.MF,你有没有设置,它就是用来设置main类,和class_path的,在这里你要把需要的jar都写上,至于路径都是相对于你导出的这个jar包的相对位置。我给你一段示例:

***************************************************************************************

Manifest-Version: 1.0

Ant-Version: Apache Ant 1.7.1

Created-By: 1.5.0_22-b03 (Sun Microsystems Inc.)

Main-Class: com.nari.syslog.server.Syslog4jServer

Class-Path: . lib/jna.jar lib/log4j-1.2.14.jar lib/commons-pool.jar li

b/joda-time-2.1.jar lib/syslog4j-0.9.46-bin.jar lib/h2-1.3.159.jar li

b/CollectRmiServerC.jar lib/quartz-all-1.6.4.jar lib/activemq-all-5.3

.2.jar lib/commons-collections-3.2.jar lib/dom4j-1.6.1.jar lib/jaxen-

1.1-beta-7.jar

***************************************************************************************

看到 lib/XX.jar形式了么,至于这个lib就是和导出的jar包同级目录下面的一个文件夹,然后将所需要的其他jar包都放到lib文件夹下,再运行该导出jar文件,就会找到所引用的jar包了,搞熟练了就没什么了,这些都可以借用MyEclipse的导入导出功能,这些配置性的东西都会自动生成,没必要记。

你可以继续追问,不行的话,再call我,今天上班没事干

FEST工具是什么意思

FEST-Swing是一个用于Swing GUI应用程序功能测试的java开源类库。支持模拟用户交互( 鼠标操作和键盘输入)。支持JDK中的所有Swing组件。提供简洁、强大的API来创建和维护GUI功能测试。

FEST 需要Java SE 5.0 或以后版本支持。

javafest的简单介绍

Java web start入门

下面是用最简单的HelloWorld方法实现一个Java Web Start的例子 工程webstart目录结构如下

目录说明如下

images 存放* jnlp文件中定义的图标文件

jar 存放classes打包后的jar文件

jnlp 存放* jnlp描述文件

src java源码

WEB INF/classes java编译后的class文件

webatart 建立步骤如下

.在webstart/src/jws下新建一HelloWorld java文件

package jws;

import javax swing *;

public class HelloWorld {

private JFrame jFrame;

private JPanel jPanel;

private JLabel label;

public HelloWorld(){

jFrame = new JFrame( HelloWorld Test Frame );

label = new JLabel( Hello world! );

jPanel = new JPanel();

jPanel add(label);

jFrame add(jPanel);

jFrame pack();

jFrame setSize( );

jFrame setLocation( );

jFrame setVisible(true);

jFrame setDefaultCloseOperation(JFrame EXIT_ON_CLOSE);

}

// webstart 启动时执行的主方法

public static void main(String args[]){

new HelloWorld();

}

}

注 在main方法中完全可以不用写new HelloWorld(); 而只在main方法中输出一条测试语句

System out println( This is test! );

进行简单测试 打印结果会出现在步骤 java控制台中

.编译HelloWorld java 在WEB INF/classes目录下执行命令

jar cvf helloworld jar jws/* class

执行后把生成的helloworld jar包拷贝到webstart/jar/jws目录下

(在IDEA中打包使用Jar Tool插件比较方便 eclipse中可以使用Fatjar)

.从helloworld jar/META INF中解压出MNIFEST MF 更改MNIFEST MF内容

Manifest Version:

Created By: _ (Sun Microsystems Inc )

Manifest Version:

Created By: _ (Sun Microsystems Inc )

Main Class: jws HelloWorld

然后在WEB INF/classes目录下执行命令

jar umf MANIFEST MF helloworld jar

把新的MNIFEST MF更新到helloworld jar包中

注 如果在下面步骤 中的application desc main class= jws HelloWorld /指定了Main Class方法 此步骤可以省略

.webstart/jnlp目录下新建一HelloWorld jnlp文件

?xml version= encoding= UTF ?

! codebase 属性指出搜索应用程序资源的顶级URL 下面的icon/jar元素都是以这个URL为基本

jnlp codebase=

information

! 在 开始 运行 菜单中输入 javaws 或 javaws viewer 启动Web Start 会看到客户端已经安装的webstart应用程序

! title 应用程序标题 vendor 供应商

title/vendor 元素必须 会显示在用 javaws viewer 命令

打开的应用程序缓存查看器(Java Application Cache Viewer)中

titleHelloWorld/title

vendorLively Corporation/vendor

descriptionHelloWorld Test Example for WebStart /description

! homepage 存放有关应用程序的相关文档的URL 如help文件等 仅仅是description作用

homepage /

! icon 指定图标会显示在应用程序缓存查看器中

在查看器中新建webstart快捷方式到桌面时也会显示为快捷方式图标

只支持GIF/JPEG格式 其它格式无效

icon /

! splash 在sun的文档中提到会出现在webstart启动时的闪屏中 不过可能由于速度问题 我没有观察到

icon kind= splash /

! 允许离线启动 可以使用javaws offline命令

offline allowed/

/information

resources

! 指定客户端需要安装的j se版本 下面指定为 +

如果版本是 在链接此jnlp文件时会提示更新j se版本

j se version= + /

! 指定要下载到本地的jar文件(注意 所有的文件都需要打包才能够下载)

可以包含一些资源文件 如icons/configuration files 可以使用getResource方法取得

jar /

/resources

! application desc 必须 指定webstart启动时执行jar文件中的哪个类

application desc main class= jws HelloWorld /

/jnlp

其中* jnlp文件的语法的详细信息可以在sun网站上查询

其中javaws命令行的详细参数可以在sun网站上查询

.webstart目录下建一l

内容如下

a HelloWorld/a

.因为是web应用 所以webstart/WEB INF建一web xml文件

内容为

web app

/web app

即可 启动tomcat时默认会去找l文件

.webstart工程放入tomcat/webapps 启动tomcat即可

启动后会看到helloworld的swing弹出窗口 还有如下图会有一个java控制台

如果要在HelloWorld java中对本地文件进行操作 就必须对jar文件进行签名 具体步骤如下:

     在HelloWorld java的main方法中对文件进行操作

File file = new File( E: + /test txt );

try {

System out println(file createNewFile());

} catch (IOException e) {

e printStackTrace();

}

.用keytool genkey产生一个私钥(使用keytool –help命令可查看keytool命令参数)

keytool genkey alias mykey keystore mykeystore keypass mypass storepass mykeystorepass validity

参数说明如下

alias mykey 指定密钥的别名 不指定的话默认为 mykey

keystore mykeystore 指定密钥数据库名 不指定则默认在Documents and                      Settings\Administrator下生成一个名称为 keystore的文件

keypass mypass 指定密钥密码 用jarsigner签名时需要

storepass mykeystorepass 指定密钥数据库密码 用jarsigner签名时需要

validity 密钥有效时间为 天 不指定的话默认为 天

.在WEB INF/classes目录下运行keytool命令 会提示输入一些姓名/公司/国家之类的信息

如果不想一步步输入上面信息 可以直接输入下面命令执行

keytool genkey alias mykey keystore mykeystore keypass mypass storepass mykeystorepass validity dname cn=Henry Zhou ou=JavaSoft l=SZ S=JS o=Lively c=CN

dname 参数说明如下

CN=monName

OU=anizationUnit

O=anizationName

L=localityName

S=stateName

C =country

.执行完毕在WEB INF/classes目录下生成一个名mykeystore的密钥文件 下面要用此密钥文件对jar文件进行加密

jarsigner keystore mykeystore helloworld jar mykey

helloworld jar mykey 指定要签名的jar文件和密钥的别名

运行命令后会提示输入密钥密码和密钥数据库密码

签名者证书将在六个月内过期

由于安全原因 在上面的命令中无法指定密钥密码和密钥数据库密码 即使运行

jarsigner keystore mykeystore helloworld jar mykey keypass mypass storepass mykeystorepass

仍然会提示输入密钥密码和密钥数据库密码

其中keytool的详细参数说明可以在sun网站上查询

其中jarsigner命令行的详细参数可以在sun网站上查询

执行后在helloworld jar/META INF中可以看到生成MYKEY DSA和MYKEY SF文件(可以通过 sigFile MKSIGN指定生成 MKSIGN SF 和 MKSIGN DSA )

其中SF文件包含了JAR中所有类的一个列表 保存了签名过程中使用的摘要算法 DSA文件是一个二进制密匙文件 扩展名是DSA还是RSA取决你使用的签名算法 默认是DSA 可以在keytool参数中指定RSA算法

.把生成的helloworld jar包拷贝到webstart/jar/jws目录下

.在webstart/jnlp/HelloWorld jnlp中添加

security

all permissions/

/security

增加了签名后 如果缺少securityall permissions//security会报错

启动/运行应用程序时发生错误

标题 JNLP Argument Solution

供应商 Lively

类别 安全错误

access denied (java io FilePermission E:\test txt write)

webstart 工程放入tomcat/webapps 启动tomcat即可 链接jnlp后发现E盘新建一test txt文件 测试成功

注 网上介绍有时候需要在webstart/WEB INF/web xml文件中配置

mime mapping

extensionjnlp/extension

mime typeapplication/x java jnlp file/mime type

/mime mapping

lishixinzhi/Article/program/Java/hx/201311/25831

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

本文来自投稿,不代表【】观点,发布者:【

本文地址: ,如若转载,请注明出处!

举报投诉邮箱:253000106@qq.com

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2024年4月2日 08:23:47
下一篇 2024年4月2日 08:28:54

相关推荐

  • c语言mallloc使用的简单介绍

    C语言中使用malloc必须加#includemallo.h? 1、在C语言中使用malloc函数进行动态内存分配。malloc的全称是memory allocation,中文叫动态内存分配。原型:extern void malloc(unsigned int num_bytes);功能:分配长度为num_bytes字节的内存块。 2、你可以看一下C语言那本…

    2024年5月23日
    4400
  • javascriptcanvas的简单介绍

    如何使用js在画布上绘制图形 1、可以使用 drawImage()方法把一幅图像绘制到画布上。 以使用三种不同的参数组合。最简单的调用方式是传入一个 HTML 元素,以及绘制该图像的起点的 x 和 y 坐标。 2、效果图:使用JavaScript在画布中绘制文本图形首先我们来看看要在画布上绘制文本图形,需要用到的最重要的属性和方法:font属性:定义文本的字…

    2024年5月23日
    4200
  • cortexm4linux的简单介绍

    Cortex-M4的主要功能 Cortex-M4提供了无可比拟的功能,以将[1] 32位控制与领先的数字信号处理技术集成来满足需要很高能效级别的市场。 Cortex-M4核心具有浮点单元(FPU)单精度,支持所有Arm单精度数据处理指令和数据类型。它还实现了一套完整的DSP指令和一个提高应用程序安全性的内存保护单元(MPU)。 主要是m4比m3多了dsp的支…

    2024年5月23日
    4300
  • 3desjavaphp的简单介绍

    php的3des加密结果与java不一致 他们的加密算法都是通用的,是可以解开的,只要你des的模式,加密长度,初始向量什么的都一样就可以。 JAVA写RSA加密,私钥都是一样的,公钥每次加密的结果不一样跟对数据的padding(填充)有关。Padding(填充)属性定义元素边框与元素内容之间的空间。padding简写属性在一个声明中设置所有内边距属性。 要…

    2024年5月23日
    4700
  • 黑客代码软件学习推荐歌曲的简单介绍

    我想自学编程代码,,目地是“黑”网站,开发出破解代码。有没有这方面的… 这个迭代周期不应该以周为周期或以月为周期发生,而是应该以日为周期。知识等待使用的时间越久,知识这把斧头就越钝。等待学习新知识的时间越长,你就越难以将其融入到代码中。 我认为这个问题问得本身就显得有点矛盾,想学却担心自己看不懂代码学不来,试问哪个编程人员不是从零开始的。坚定信念…

    2024年5月23日
    4700
  • java8种基本类型范围的简单介绍

    java中常用的数据类型有哪些 1、java数据类型分为基本数据类型和引用数据类型,基本数据类型有boolean 、long 、int 、char、byte、short、double、float。引用数据类型有类类型、接口类型和数组类型。 2、java中包含的基本数据类型介绍:\x0d\x0aJava共支持8种内置数据类型。内置类型由Java语言预先定义好,…

    2024年5月23日
    4700
  • linux系统与gpt的关系的简单介绍

    linux下查看分区是不是gpt 看分区会报错,比如:WARNING: GPT (GUID Partition Table) detected on /dev/sda! The util fdisk doesnt support GPT. Use GNU Parted.所以这个sda就是gpt的。 选择“管理”;在“磁盘管理”中,右键“磁盘0”,在弹出的右键…

    2024年5月23日
    5400
  • 北京黑客学习培训的简单介绍

    现在学什么好啊 包括建筑设计、服装设计、珠宝首饰设计等,选择适合自己的设计专业,好好学习,就业容易且收入高。学前教育专业:很多女生喜欢小孩子,且女生一般细心且有耐心,教育行业假期宽裕,工作环境单纯,就业机会多。 现在比较热门好就业的专业有人工智能、机械专业、电子商务专业、人力资源专业、金融学专业、小语种类专业等等。人工智能:人工智能领域的研究包括机器人、语言…

    2024年5月23日
    4100
  • javaee要学那些东西的简单介绍

    java主要学习哪些内容 1、学java最重要的是下面四个内容:掌握Java语言的使用:语言语法、程序逻辑,OOP(面向对象)思想,封装、继承、多态,集合框架、泛型、File I\O技术,多线程技术、socket网络编程,XML技术。 2、Java基础:了解Java的基本语法、数据类型、控制流程、数组、字符串等基础概念。学习面向对象编程(OOP)的原则和概念…

    2024年5月23日
    4200
  • excel自杀的简单介绍

    excel表格中宏代码,具有自杀功能,密码输入错误3次就自动删除表格_百度… 我给楼主一个建议,利用excel自身的密码保护,保护此工作簿的结构,将sheet提前隐藏。这样如果有人将同一份excel打开时,如果不能输入正确的密码,就不能将sheet取消隐藏,就能达到楼主所说的保护了。 如果你还有源文件的话,可以这样试试:打开其他的excel文件,…

    2024年5月23日
    8100

发表回复

登录后才能评论



关注微信