簡體   English   中英

Intellij Idea-構建jar之后Java程序無法正常運行

[英]Intellij Idea - Java program doesn't work properly after building jar

我在使用Java時遇到一個奇怪的問題-我正在Intellij Idea中進行編程,我正在使用此小代碼對網站進行基本授權

        String authString = name + ":" + password;
        byte[] binaryData = authString.getBytes();
        String authStringEnc = new String(Base64.encodeBase64(binaryData));
        URL url = new URL(webPage);
        URLConnection urlConnection = url.openConnection();
        urlConnection.setRequestProperty("Authorization", "Basic " + authStringEnc);
        InputStream is_auth = urlConnection.getInputStream();
        InputStreamReader isr = new InputStreamReader(is_auth);

這段代碼工作了幾個星期,但我繼續編寫程序。 然后昨天我看到-當我單擊在Intellij中運行時,程序可以工作,但是當我啟動.jar文件時,此行無法完成:

        String authStringEnc = new String(Base64.encodeBase64(binaryData));

我不知道為什么,但是程序在執行此行時停止。 但是,當我單擊Intellij中的運行或調試時,一切正常。

順便說一句。 我將這個庫用於encodeBase64:

        import org.apache.commons.codec.binary.Base64;

如果您不知道為什么它不起作用,也許您可​​以與我分享對站點進行基本授權的想法。 提前致謝。

運行jar文件時,需要將Apache Commons Codec jar添加到類路徑中 您應該確保在IntelliJ中添加的其他jar文件/庫也位於類路徑中。

您應該使用日志記錄來研究堆棧跟蹤。 可能您有一些ClassNotFound異常或類似的明顯現象。

答案是:我只需要刷新jar工件。 一切正常之后,我刪除了舊工件並再次創建了它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM