星期二, 9月 24, 2013

2013IT鐵人賽-09-Java01-Java開發環境安裝與測試

2013IT鐵人賽-09-Java01-Java開發環境安裝與測試



前面幾篇準備了不同的程式開發環境, 也開始習慣在 Codecademy 與其他的線上網站先體驗與預習程式的操作, 接下來輪到 java 的程式開發環境準備.


在線上體驗網站的部份也真的花了一些時間來尋找, 在Codecademy 以及 code school 都有人提出是否會在這兩個網站上面提供教學, 但是目前這兩個網站都沒有提供java的相關教學.
但是在網路上倒是有找到一個提供教學的網站


LearnJavaOnline.org



一樣, 這次練習的環境是 EasyCloud 所提供的 VM, 使用 openSUSE 12.2 的環境.


先列出必要的開發工具
  • java
    • 目前在 openSUSE 上面預設的java是使用openjdk的套件
    • 要有開發環境要裝 java-1_7_0-openjdk 套件 以及 java-1_7_0-openjdk-devel
  • javac
    • 另外 javacc 套件也是不可少的


上面這三個套件都可以經由  zypper  install  套件名稱  來安裝


察看目前的套件安裝狀況 (由於之前有佈署 Android 開發環境, 所以相關套件已經安裝)
# zypper   search  --match-words   java
正在載入套件庫資料...
讀取已安裝的套件...


S | 名稱                        | 摘要                                | 類型    
--+-----------------------------+-------------------------------------+---------
 | java-1_5_0-gcj-compat       | JPackage Runtime Scripts for GCJ    | 套件    
 | java-1_5_0-gcj-compat-32bit | JPackage Runtime Scripts for GCJ    | 套件    
 | java-1_5_0-gcj-compat-devel | JPackage development scripts for -> | 套件    
i | java-1_7_0-openjdk          | Java runtime environment based on-> | 套件    
 | java-1_7_0-openjdk          | Java runtime environment based on-> | src 套件
 | java-1_7_0-openjdk-demo     | Sources for building demo applica-> | 套件    
i | java-1_7_0-openjdk-devel    | Java SDK based on OpenJDK 7 and I-> | 套件


# zypper  search  --match-words  javacc
正在載入套件庫資料...
讀取已安裝的套件...


S | 名稱          | 摘要                                    | 類型
--+---------------+-----------------------------------------+-----
i | javacc        | A Parser and Scanner Generator for Java | 套件



來檢視一下 java 的版本資訊吧 ^^ (順便看看有沒有安裝成功)


# java  -version
java version "1.7.0_40"
OpenJDK Runtime Environment (IcedTea 2.4.1) (suse-3.41.1-x86_64)
OpenJDK 64-Bit Server VM (build 24.0-b50, mixed mode)



來建立一個 java 資料夾儲存之後的練習檔案吧
(以我的例子, 我的 git 是放在 /root 目錄下, 請按照自己的情形調整)
#  cd  /root
#  mkdir   /root/java
# vi    java/helloworld.java
內容為
class helloworld {
       public static void main(String[] args){
               System.out.println("Goodbye, World");
       }


}


觀察目錄下的物件
# ls  java/
helloworld.java
這個時候如果使用  java 指令去執行他, 會產生錯誤, 因為他目前只是原始碼不是byte code 位元碼
# java   java/helloworld.java
錯誤: 找不到或無法載入主要類別 java.helloworld.java


使用 javac 指令進行編譯
# javac   java/helloworld.java


觀察目錄下的物件
# ls  java/
helloworld.class  helloworld.java


切換到該目錄
# cd  java/


使用 java 指令執行我們的第1個程式
# java   helloworld
Goodbye, World


好了, 至此我們的開發環境已經準備完成了, 也執行了我們第1個 java 程式 :-)
上傳到 GitHub 吧


切換到我的 git  目錄
#cd  /root


將相關檔案加入到 git
# git  add  java/*


使用 git 提交檔案
# git  commit  -m  "Add java exercise files"
[master ae480c4] Add java exercise files
2 files changed, 6 insertions(+)
create mode 100644 java/helloworld.class
create mode 100644 java/helloworld.java


將檔案同步到GitHub
# git  push  origin master
Username for 'https://github.com': 請輸入你的帳號
Password for 'https://sakanamax@github.com': 請輸入你的密碼
Counting objects: 6, done.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 797 bytes, done.
Total 5 (delta 0), reused 0 (delta 0)
To https://github.com/sakanamax/2013ironman.git
  9788069..ae480c4  master -> master




Fun with Day 9 ~

1 則留言:

Abderrahmen Ben Mariem 提到...

我推荐这个网站,了解如何用Java编程
这对我来说非常有帮助。