Jar文件不起作用

时间:2013-08-26 20:57:11

标签: java eclipse jar ftp executable-jar

我一直在尝试将我的程序内置到一个可执行的.jar中。我的程序的功能是创建一个文本文件,将数据放在该文本文件中,然后将文本文件上传到我的ftp服务器。

在日食中,程序完美运行,没有错误或问题。一旦我将它提取到一个excecutable .jar,程序就不显示我的JOptionPane.showMessageDialog()输出,文本文件被创建并上传到ftp服务器,但ftp服务器内的副本没有数据(我本地机器上的副本)确实有数据)。当我从命令提示符运行它来检查错误时,它运行得很好。

发生故障的班级:

import java.io.FileInputStream;
import java.io.IOException;

import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;

public class UploadKey {
    public void Send(String fileName) {
        FTPClient client = new FTPClient();
        FileInputStream fis = null;
        System.out.println("5");

        try {
            client.connect("host");
            client.login("username", "password");
            int replyCode = client.getReplyCode();
            System.out.println("6");
            if (!FTPReply.isPositiveCompletion(replyCode)) {
                client.disconnect();
                System.err.println("FTP server refused connection.");
                System.exit(1);
            }
            fis = new FileInputStream("C:\\" + fileName);
            System.out.println("7");
            client.setFileType(FTP.BINARY_FILE_TYPE);
            client.setFileTransferMode(FTP.BINARY_FILE_TYPE);
            System.out.println("8");
            client.storeFile(fileName, fis);
            System.out.println("9");
            fis.close();
            System.out.println("10");
            client.logout();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

感谢您的时间,

菲利普

编辑:解决了,.jar被读作javaw.exe而不是java档案。通过Jarfix应用程序(http://johann.loefflmann.net/en/software/jarfix/index.html)修复。谢谢大家的帮助。

0 个答案:

没有答案