對不起,我很nooby和簡單的問題jar文件的內容,但是這已經整天把我逼瘋:導入工作不
我想創建一個簡單的程序,這將幫助我一些JPG文件到文件夾進行排序。我想使用元數據提取器來提取拍攝照片的日期(https://code.google.com/p/metadata-extractor/)。
我的問題是每當我嘗試編譯時,它說包不存在。我將jar文件與我的測試java文件放在同一個目錄中,以及我正在測試的圖片。
我成立了Git的Bash的類路徑如下:
javac -cp "metadata-extractor-2.6.4.jar:." PictureSort.java
與(幾個簡單)的代碼行沿
:
import java.io.File;
import com.drew.metadata.Metadata;
class PictureSort
{
public static void main(String[] args)
{
File file = new File("IMG_1244.JPG");
Metadata metadata = ImageMetadataReader.readMetadata(file);
}
}
我已經研究過的Jar文件的內容爲我需要和Metadata.java包含在com/drew /元數據/元數據,所以這就是爲什麼我在第二行使用所述的導入聲明。
但是...... 我收到以下錯誤:
PictureSort.java:2: error: package com.drew.metadata does not exist
PictureSort.java:9: error: cannot find symbol
Metadata metadata = ImageMetadataReader.readMetadata(file);
^
symbol: class Metadata
location: class PictureSort
PictureSort.java:9: error: cannot find symbol
Metadata metadata = ImageMetadataReader.readMetadata(file);
^
symbol: variable ImageMetadataReader
location: class PictureSort
3 errors
我試圖尋找一個答案,但我似乎無法找到一個解決方案,爲我工作。任何人都可以指出我正確的方向,因爲我做錯了什麼?我在使用罐子方面沒有太多經驗。幫助真的很感激。
導入應該可能是'import com.drew.metadata.Metadata'。以_-src.jar_結尾的jar名稱表明這不是包含類文件的二進制文件;只是一個源代碼檔案。您將需要獲取二進制庫。 – McDowell
感謝您的快速回復,我已經下載了二進制庫。它只有com/drew/*,所以我在代碼和類路徑中改變了它,所以它不再是源代碼。但問題仍然存在,與package「com.drew」的錯誤相同。元數據「不存在嗎? – Zhave