2012-09-22 27 views
0

安裝CRF ++工具包,我嘗試運行該程序 「test.java」 CRF下++ - 0.54/java文件夾。對於這一點,I型與CRF ++工具包中的test.java處理

java -cp /home/amira/CRF++-0.54/java/org/chasen/crfpp test 

不過,我有以下錯誤:

Exception in thread "main" java.lang.NoClassDefFoundError: test 
Caused by: java.lang.ClassNotFoundException: test 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266) 
Could not find the main class: test. Program will exit. 

在README文件,還有就是命令的java -classpath CRFPP.jar測試 - d ../dic。但是,問題是我沒有找到CRFPP.jar的類路徑。此外,我不明白什麼../dic在命令參考

+0

CRF ++ java目錄中的README和Makefile不正確/不完整,因此您遇到問題並不奇怪,因爲您的一串問題表明您需要了解更多關於如何編譯和執行C++以及java程序,類似於類路徑的基礎知識。您是否嘗試過直接聯繫CRF ++開發人員? (如果您想知道如何修復Makefile並從README修改命令,演示程序確實可行,但這是開發人員應該真正解決的問題。) – aab

回答

5
  1. 根據機器設置對java目錄的Makefile進行更改。
  2. 給出正確的Java路徑和正在使用的編譯器。
  3. 在swig目錄中運行make java
  4. 在java目錄下運行make all
  5. 在java目錄中運行make之前,請確保您已將模型文件放在適當的位置,否則它將不會打開模型文件。
  6. 在java目錄下運行make test