我正在用BlueJ學習java,最近我給了一個名爲Imagen.jar
的.jar文件。顯然,它所做的是根據作爲參數給出的圖像文件名返回一些像素矢量。如何編譯在BlueJ中使用.jar文件類的代碼?
無論如何,我應該做一個程序,將使用一個叫做Imagen
的類。顯然,這樣的課程在上述.jar
文件中。
顯然,如果我使用這樣的類,BlueJ將無法編譯,因爲我沒有導入它或任何東西。但是,我並不知道如何首先導入這樣的類。
我得到了下面的示例代碼:
import java.io.PrintWriter;
public class Main {
public static void main(String arg[ ]){
if(arg.length > 1){
Imagen imagen = new Imagen(arg[0]);
int [][] m = imagen.getMatriz();
PrintWriter salida = null;
try {
salida = new PrintWriter(arg[1]);
}
catch(Exception e){
System.err.println(e);
}
for(int [] fila : m){
for(int valor : fila){
System.out.print("\t"+valor);
salida.print("\t"+valor);
}
salida.println("");
System.out.println("");
}
if(salida!=null){
salida.close();
}
}
else {
System.out.println("Uso: java -classpath .;Imagen.jar Main nombreArchivo.gif");
}
}
}
它不利用BlueJ的編譯。然而,正如你所看到的,在最後它說,使用它,你必須在終端輸入:
java -classpath .;Imagen.jar Main myImageFile.gif
而且我做到這一點。但它一直在向我拋出同樣的信息。
所以我堅持現在:
- 爲什麼終端線路有人告訴我用不工作?
- 如何導入包含在.jar文件中的類?
「但它一直給我留下相同的信息」。請告訴我們錯誤信息的內容。 – ReyCharles
@ReyCharles:消息是*「Uso:java -classpath。; Imagen.jar Main nombreArchivo.gif」* – Voldemort
在這種情況下,它似乎能正常工作。你只是沒有提供一個參數(這似乎是一個.gif文件)的程序。 – ReyCharles