第一:
Within cygwin, use bash.
Also install java8, older versions lack key features.
二:
Add the following lines to your .bashrc file:
echo "javac :`which javac`"
echo "jar :`which jar`"
echo "java :`which java`"
echo "ant :`which ant`"
當你開始一個新的bash shell,它會迴應這四個java essentials的版本。 運行每一個沒有參數,你應該得到四個適當的投訴。如果他們不運行,那麼你需要安裝它們。
然後創建一個目錄名爲src和創建HelloWorld.java:
public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello World from main!");
}
}
在同一目錄下,創建HelloWorldAsPackage.java:
package src;
public class HelloWorldAsPackage
{
public static void main(String[] args)
{
System.out.println("Hello World In a Package (Directory) called 'src'!");
}
}
然後創建bash腳本runOneCase.bash:
#!/bin/bash
echo "Listing $1.java"
echo "=================================================="
cat $1.java
echo "=================================================="
echo "Compiling $1.java"
echo "+ javac $1.java"
javac $1.java
echo "+ cd $2"
cd $2
echo "Running $1.java"
echo "+ java $3$1 $4"
java $3$1 $4
echo "=================================================="
然後創建bash腳本runThemAll.bash
#!/bin/bash
echo "CASE 1: HelloWorld"
runOneCase.bash HelloWorld . "" ""
echo "CASE 2: HelloWorld as a Package"
runOneCase.bash HelloWorldAsPackage .. src. ""
現在運行腳本:runThemAll.bash,方法是在cygwin提示符下鍵入它。
如果你得到以下輸出,你可以考慮在cygwin下安裝java。
CASE 1: HelloWorld (Hit Return)
Listing HelloWorld.java
==================================================
public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello World from main!");
}
}
==================================================
Compiling HelloWorld.java
+ javac HelloWorld.java
+ cd .
Running HelloWorld.java
+ java HelloWorld
Hello World from main!
==================================================
CASE 2: HelloWorld as a Package (Hit Return)
Listing HelloWorldAsPackage.java
==================================================
package src;
public class HelloWorldAsPackage
{
public static void main(String[] args)
{
System.out.println("Hello World In a Package (Directory) called 'src'!");
}
}
==================================================
Compiling HelloWorldAsPackage.java
+ javac HelloWorldAsPackage.java
+ cd ..
Running HelloWorldAsPackage.java
+ java src.HelloWorldAsPackage
Hello World In a Package (Directory) called 'src'!
我很高興錯了,但我總是懷疑在cygwin路徑中有空格。所以我通常將Java安裝到C:/ Java/...以避免路徑名稱中的空格出現任何問題。另外,你有你的JAVA_HOME環境變量集嗎? –
yup - $ echo $ JAVA_HOME cygdrive/C/Program Files(x86)/Java/jdk1.7。0_51 –
你確定你沒有使用java -version運行linux二進制文件,那麼「哪個java」打印什麼?您的PATH無效,「echo $ PATH」打印是什麼?這不應該搞砸你的PATH,即使在「export PATH = $ PATH:/ foo/bar/baz」之後它也應該工作。 – Mikuz