通常,我在項目中使用maven,但由於某些遷移問題,我必須(暫時)下載jar。使用qrgen和zxing庫異常java.lang.NoSuchMethodError
我想用下面的代碼:
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import net.glxn.qrgen.QRCode;
import net.glxn.qrgen.image.ImageType;
public class Main {
public static void main(String[] args) {
ByteArrayOutputStream out = QRCode.from("Hello World")
.to(ImageType.PNG).stream();
try {
FileOutputStream fout = new FileOutputStream(new File(
"C:\\QR_Code.JPG"));
fout.write(out.toByteArray());
fout.flush();
fout.close();
} catch (FileNotFoundException e) {
// Do Logging
} catch (IOException e) {
// Do Logging
}
}
}
我增加了一個罐子裏我的項目:
qrgen-1.3.jar
但後來,我已經有一個例外:
Exception in thread "main" java.lang.NoClassDefFoundError: com/google/zxing/Writer
所以我加了兩個其他的罐子:
zxing-core-1.7.jar
zxing-j2se-1.7.jar
,現在,我已經得到了另一個錯誤:
Exception in thread "main" java.lang.NoSuchMethodError: com.google.zxing.Writer.encode(Ljava/lang/String;Lcom/google/zxing/BarcodeFormat;IILjava/util/Map;)Lcom/google/zxing/common/BitMatrix;
,在這裏我不能修復它。
哪裏可能有問題?
我相信它從第一行FO我的代碼有云:
ByteArrayOutputStream out = QRCode.from("Hello World").to(ImageType.PNG).stream();
正如我寫的,我使用Maven但不是w,我有一些回購問題,所以我想爲它做快速的解決方法。最後,它完美地工作。非常感謝你。 – ruhungry
我刪除了罐子,並將依賴關係添加到我的'pom.xml'中。它也很完美。 – ruhungry