2016-07-23 14 views
1

ここに私のプログラムがあり、それはうまく動作します。実行可能なjarファイルを作成する

.jarファイルにするコマンド。

jar -cvfm chat.jar manifest.txt client.class 

私のプログラムは、私のマニフェストはSOOOOOOされるべきである.....

ヘルプをしてくださいIDKの正確で、結構です。他のすべてのプログラムは、動作する.jarに変換されますが、これは変換されません。

class client { 

    public static Socket s; 
    public static JTextArea jta; 
    public static String server; 
    public static String name; 

    public static void main(String args[]) throws Exception { 

     Thread t = new Thread(new Runnable() { 

      public void run() { 
       try { 
        s = new Socket(server, 9000); 
        DataInputStream dis = new DataInputStream(s.getInputStream()); 
        String str; 
        while ((str = dis.readUTF()) != null) { 
         jta.append(str + "\n"); 
        } 
       } catch (Exception e1) { 
       } 
      } 
     }); 

     JFrame j = new JFrame("Test"); 
     j.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     j.setVisible(true); 

     jta = new JTextArea(); 
     JScrollPane jsp = new JScrollPane(jta); 
     j.add(jsp); 

     JTextField jtf = new JTextField(); 
     jtf.setFont(new Font("", Font.BOLD, 14)); 
     j.add(jtf, BorderLayout.SOUTH); 

     JPanel jp = new JPanel(); 
     jp.add(new JLabel("Name:")); 
     JTextField jtfN = new JTextField(); 
     jtfN.setPreferredSize(new Dimension(180, 20)); 
     jp.add(jtfN); 

     jp.add(new JLabel("Server:")); 
     JTextField jtfS = new JTextField(); 
     jtfS.setPreferredSize(new Dimension(180, 20)); 
     jp.add(jtfS); 
     int jop = JOptionPane.showConfirmDialog(null, jp, "Enter Username and Server.", JOptionPane.OK_CANCEL_OPTION); 
     if (jop == 0) { 
      name = jtfN.getText(); 
      server = jtfS.getText(); 
      t.start(); 
     } 

     jtf.addKeyListener(new KeyListener() { 

      public void keyTyped(KeyEvent e) { 

      } 

      public void keyPressed(KeyEvent e) { 

      } 

      public void keyReleased(KeyEvent e) { 
       if (e.getKeyCode() == KeyEvent.VK_ENTER) { 
        try { 
         String data = name + ": " + jtf.getText(); 
         DataOutputStream dos = new DataOutputStream(s.getOutputStream()); 
         dos.writeUTF(data); 
         jta.append(data + "\n"); 
         jtf.setText(""); 
        } catch (Exception e1) { 
        } 
       } 
      } 
     }); 

     /////////////////////// 
     j.getContentPane().setPreferredSize(new Dimension(800, 500)); 
     j.pack(); 
     j.setLocationRelativeTo(null); 

    } 
} 
+0

どのIDEを使用していますか? –

+0

私はコマンドプロンプトとメモ帳++だけです。 – EchoCode

答えて

2

ファイル名とクラス名が同じであることを確認した.javaファイル

  1. まずから.jarファイルを作ります。 "client.java"はクラスがクライアントの場合
  2. ここで、manifest.txtファイルを作成します。この

    メインクラスの記述:それはあなたのケースではYour_Main_Class_name

    メインクラス:

    今すぐファイル

  3. に保存し、クライアント

    両方のファイル( .javaとmanifest.txt)を同じディレクトリに作成します。

  4. コマンドプロンプトを開きます。
  5. .javaとmanifest.txtファイルを保存したフォルダに移動します。コマンド を使用して

    のCD your_path

  6. は今のコマンドを使用して.javaファイルをコンパイル

    のjavac client.java

  7. は今、あなたは上のclient.classファイルを持っています同じフォルダ

  8. は、今、このコマンド

    のjar .jarファイルを使用するようにするには、CFN client.jarのmanifest.txt client.class今すぐあなたのclient.jarのファイルが同じディレクトリに作成され

  9. .jarファイルを実行するには

    java -jar clientを使用してください。ja

関連する問題