`

创建一个类后,jar打包 、keytool 数字签名然后web start 发布(1)

阅读更多

环境:

IDE: Jbuilder 2005

JDK: 1.5

 

一、创建类

在C盘目录下创建testProject一个工程,然后增加一个包test,

在test下创建类TestPanel.java

 

 

package test;

import java.awt.BorderLayout;

import javax.swing.JPanel;
import javax.swing.JLabel;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JFrame;
import java.awt.Container;

/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2008</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
public class TestPanel extends JPanel implements ActionListener{
    BorderLayout borderLayout1 = new BorderLayout();
    JLabel lab = new JLabel();
    JButton btClick = new JButton();
    int i = 0;

    public TestPanel() {
        try {
            jbInit();
            btClick.addActionListener(this);
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }

    private void jbInit() throws Exception {
        this.setLayout(borderLayout1);
        btClick.setText("点击");
        this.add(lab, java.awt.BorderLayout.CENTER);
        this.add(btClick, java.awt.BorderLayout.SOUTH);
    }

    public void actionPerformed(ActionEvent e) {
        Object source = e.getSource();
        if (source == btClick) {
            i++;
            lab.setText("<html><font size= 5 color = blue>你已经点击按钮" + i + "次!</html>");
        }
    }
    public static void main(String[] args){
       JFrame fr = new JFrame();
       fr.setLayout(new BorderLayout());
       Container contentPanel = fr.getContentPane();
       // 主面板
       TestPanel mainPanel = new TestPanel();
       contentPanel.add(mainPanel, BorderLayout.CENTER);
       fr.setSize(820, 650);
       fr.setLocation(100, 50);
       // 测试
       fr.setTitle("测试");
       fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       fr.setVisible(true);
   }

}

 

 

编译后,

TestPanel.java的保存位置:C:\testProject\src\test

TestPanel.class的保存位置:C:\testProject\classes\test

 

二、把类打成jar

 

在C:\testProject\classes下增加文件MANIFEST.MF,里面的内容为:

  Main-Class:<空格>test.TestPanel<回车>

 

在dos中进入到C:\testProject\classes下, 运行命令:jar cvfm kk.jar manifest.mf test

执行命令后在C:\testProject\classes下创建了kk.jar包,双击它可以执行。

 

 

 

分享到:
评论

相关推荐

    如果给jar包制作数字签名

    - **目的**:将编译后的Class文件打包成一个单一的jar文件,便于后续的数字签名和分发。 - **操作方法**: - 使用IDE(例如Eclipse或NetBeans)的内置功能直接打包。 - 命令行方式打包:在命令行中使用`jar`命令...

    PDF数字签名(ITEXT+keytool)

    了解以上知识点后,你将能够创建一个能够生成和验证PDF数字签名的系统。这对于保护敏感信息,确保法律文件的合法性,或者在分布式环境中验证文档的完整性和来源都至关重要。通过Java和ITEXT库,结合keytool工具,你...

    签名文件Sign.jar

    标题中的"Sign.jar"就是一个经过签名处理的Java可执行文件,它包含了开发者的信息以及对程序代码的数字签名。这样的签名能确保用户下载和安装的应用程序没有被篡改,并且来自可信的开发者。 首先,我们要理解什么是...

    java JAR包签名

    签名过程包括对JAR中的每个文件进行哈希计算,然后将这些哈希值与发布者的数字签名一起存储在JAR的元数据中。这样,当JAR被加载时,Java运行环境会检查这个签名,以确认文件未被篡改,并验证发布者的身份。 JAR包...

    jar包签名和打包工具

    打包JAR文件通常使用`jar`命令行工具,它可以将类文件、资源和其他文件打包到一个JAR文件中。基本的打包命令如下: ```bash jar cf myapp.jar MyClass.class resources/ ``` 这将把`MyClass.class`和`resources/`...

    keytool1.6

    `keytool`是Java开发工具包(Java Development Kit, JDK)中的一个重要命令行工具,用于管理数字证书、密钥对和信任存储库。在本文中,我们将深入探讨`keytool1.6`版本及其在生成签名文件过程中的应用。 ### 1. `...

    JavaApplet数字签名方法和打包签名工具

    在JavaApplet中,数字签名是一个至关重要的概念,它确保代码的完整性和来源的可信性,防止恶意篡改。本篇文章将深入探讨JavaApplet的数字签名方法以及如何使用打包签名工具JavaAutoPlug.exe来实现这一过程。 首先,...

    JDK中利用keytool创建自签名证书

    在Java Development Kit (JDK) 中,`keytool` 是一个强大的命令行工具,用于管理密钥对(公钥和私钥)以及数字证书。它主要用于创建、存储、备份、恢复、导入和导出这些安全相关的实体。在这个场景中,我们将深入...

    系统签名工具keytool-importkeypair.zip

    系统签名在IT行业中,特别是在Android开发中,是一个至关重要的概念。`keytool-importkeypair.zip`这个压缩包文件包含了用于系统签名的相关工具和文件,它主要用于生成和管理数字证书,确保应用或系统的安全性。 ...

    Keytool与数字证书

    **Keytool** 是 Java 开发工具包(JDK)中的一个实用程序,用于管理密钥库(key stores),其中包括私钥(private keys)及其对应的公钥证书(public key certificates)。密钥库是一个存储密钥和证书的地方,可以用来管理和...

    java之jvm学习笔记八(实践对jar包的代码签名)

    在命令行中,可以使用`keytool`工具创建一个新的密钥库(keystore)并生成一对密钥。例如: ```bash keytool -genkeypair -alias mykey -keyalg RSA -keystore myKeystore.jks ``` 这里的`-alias`参数定义了密钥...

    Jar签名软件

    Java Archive (JAR) 文件是Java平台上的一个特殊格式,用于打包多个类文件、资源和其他相关文件。在Java开发中,JAR文件常用于分发应用程序、库或插件。然而,为了确保JAR文件的安全性和可靠性,开发者通常会对它们...

    Android签名用keytool和jarsigner制作apk文件.doc

    首先,`keytool`是Java Development Kit (JDK)自带的一个命令行工具,用于管理和创建数字证书,包括生成密钥对(公钥和私钥)以及存储这些密钥的Keystore文件。在Android应用签名的过程中,我们需要生成一个包含私钥...

    JNLP ant webstart sign genkey sample

    - 对JNLP应用程序签名,开发者通常需要创建一个私钥,然后用这个私钥签署JAR文件,以证明他们对代码的所有权和确保代码未被篡改。 接下来,我们讨论签名过程: 1. **生成密钥对**:使用`keytool -genkey`命令,...

    数字签名的Java实现

    1. **创建签名文件**:使用`jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore mykey.jks myapplet.jar mykey`命令对打包后的`.jar`文件进行签名。 2. **验证签名**:使用`jarsigner -verify -...

    jar或者APK安装签名源程序

    1. **生成密钥对**:开发者通常会使用Keytool工具生成一对密钥,包括一个私钥(用于签名)和一个公钥(用于验证签名)。私钥必须被妥善保管,而公钥可以公开。 2. **签名过程**:`jarsigner`使用私钥对`.jar`文件的...

    android项目打包签名及其项目如何发布等详细步骤.zip

    1. 创建密钥库:首先,开发者需要创建一个密钥库,这通常通过`keytool`命令行工具完成。在Java的安装目录下,执行`keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize ...

Global site tag (gtag.js) - Google Analytics