有使用用於Windows的java兩個問題cygwin
下:
- Java進行窗口使用
;
作爲罐分離器(:
用於驅動器),而Java對POSIX系統使用:
- java的窗戶不明白Cygwin路徑名,例如
/cygwin/c/Users/...
。請看看this article,它解釋瞭如何在使用Windows程序時處理cygwin POSIX路徑名,例如java
。 This one也可以是有用的,雖然是更一般的。
在你的情況,我會做一些事情,如:
java -cp $(cygpath -wp ./stanford-corenlp-3.5.1.jar:./stanford-corenlp-3.5.1-models.jar:./javax.json.jar:./joda-time.jar:./jollyday.jar) edu.stanford.nlp.patterns.GetPatternsFromDataMultiClass -props patterns/example.properties
你必須根據中選取適當的目錄改變罐子路徑。
我的意思是,如果stanford-corenlp-3.5.1.jar
位於C:\Users\k.shwetika\Desktop\NLP\SPIED-viz-master\SPIED-viz-master
,則將./stanford-corenlp-3.5.1.jar
更改爲 /cygdrive/c/Users/k.shwetika/Desktop/NLP/SPIED-viz-master/SPIED-viz-master/stanford-corenlp-3.5.1.jar
。
其他罐子一樣。
最後,我假設edu.stanford.nlp.patterns.GetPatternsFromDataMultiClass
在任何這些罐子裏。
UPDATE
我想,而不是使用cygpath
命令POSIX路徑名轉換爲Windows路徑名,你也可以使用Windows路徑名逃逸的jar分離;
(即:\;
),但我不能完全確定。
例如
java -cp win_path\jar1.jar\;...\;win_path\jarN.jar MainClass
希望這有助於!
如果你從'cygwin'運行'java for windows',你必須改變路徑或者使用'cygpath'命令,因爲'java for windows'不會理解cygwin路徑。例如:'java -cp $(cygpath -wp cygwin_path/file1.jar:cygwin_path/file2.jar)MainClass'。發佈您正在使用的腳本和Java版本。 – Albert
感謝您的快速回復阿爾伯特。我沒有使用任何腳本,只是按照斯坦福大學nlp網站上提供的模式學習(http://nlp.stanford.edu/software/patternslearning.shtml)上提供的一步一步的過程。我確實將HOME改爲HOME = C:\ Users \ k.shwetika \ Desktop \ NLP \ SPIED-viz-master \ SPIED-viz-master。我需要將其更改爲cygpath嗎?我正在使用Java 1.7 – serendipity