顯示具有 Eclipse 標籤的文章。 顯示所有文章
顯示具有 Eclipse 標籤的文章。 顯示所有文章

2016年3月7日 星期一

How to install JDT on Eclipse?

  1. Help >> Install New Software...
  2. Select the eclipse update site, shown as follow based on your eclipse standard base:
  3. Select "Programming Language" and then select "Eclipse Java Development Tools".




[Reference]

2014年9月28日 星期日

解決 Eclipse 執行時出現 "JVM terminated. Exit code=13" 的問題

   今天下載 Eclipse for J2EE 64 bit 版本後,在執行時卻出現下列畫面:


   最後發現原來我使用的 java 是 32 bits,而下載下來的 Eclipse 版本為 64 bits。Orz.

解決方法有二:
   1.重新下載 32 bits 的 Eclipse
   2.下載 64 bits JDK ,在 eclipse.ini 中設定 -vm 參數 (似乎只在你沒有設定 JAVA_HOME 才有用)

   因為在我的環境中不管怎麼設定 eclipse.ini 啟動時依舊是使用我 32 bits 的 JDK 版本,所以你可以再啟動 Eclipse 自己加上就可以順利啟動了,請參考下面指令:

~/bin/eclipse-j2ee-luna-64$ ./eclipse-j2ee -vm /home/joca/bin/jdk-8u20-linux-x64/bin

2014年8月28日 星期四

透過 Eclipse 設定 VM arguments

        之前在這篇文章中提到透過 Boloean.getBoolean("TRUE") 總是回傳 false, 是因為我們沒有設定額外的系統參數給 JVM,除了你可以在程式中透過 System.setProperty("TRUE", "TRUE"); 設定讓 getBoolean 方法回傳 true 外,你還可以自己透過在執行你的 Java 程式時設定,如下畫面:

        如果是使用 Eclipse IDE 來編譯/執行 你的 Java 程式,你可以透過 "Run Configurations..." 來設定你的 JVM 系統參數,設定方式如下圖示:

圖一

圖二
     範例程式如下:

 
package com.josh.demo;

public class GetBooleanDemo {
  public static void main(String[] args) {
   System.out.println("getBoolean(\"TRUE\") = " + Boolean.getBoolean("TRUE"));
   System.out.println("getBoolean(\"FALSE\") = " + Boolean.getBoolean("FALSE"));
   System.out.println("getBoolean(\"True\") = " + Boolean.getBoolean("True"));
   System.out.println("getBoolean(\"False\") = " + Boolean.getBoolean("False"));
 }
}

2014年7月20日 星期日

解決 Eclipse Graphical layout 無法顯示的問題

         建立一個簡單的 Android App 一開始 Graphical Layout 上面還有畫面,但是放了幾個 TextView與 EditText 後發現 Graphical Layout 竟然沒有畫面,而 Graphical Layout 提示執行 Eclipse 中的 Windows>Show View> Error Log,發現錯誤訊息為  "java.lang.NoSuchMethodError: java.lang.System.arraycopy([CI[CII)V ..." 上網查詢發現 "Android version to use when rendering layouts in Eclipse" 不可以選擇 Android 4.4W。
        剛剛稍微小試了一下,擺上  TextView 還可以正常顯示,一旦放上 EditText 就無法顯示了。下面圖示是設定的方式:

[參考文章]

[關鍵字]
  • java.lang.System.arraycopy([CI[CII)V

2014年7月6日 星期日

如何刪除 Eclipse 舊的 Workspace

     要移除舊的 Workspace 可以透過下面兩個方法:
  1. 手動修改 <Eclipse 安裝路徑>\configuration\.settings\org.eclipse.ui.ide.prefs 檔案,打開該檔案你會看到類似 RECENT_WORKSPACES = "...\workspace1\n\...\worspace2",將你不要的 WOrkspace 刪除即可。
  2. 透過 Eclipse 工具列 Preferences >> General >> Startup and Shutdown >> Workspaces,選擇你要移除的 Workspace,按 Remove 按鈕即可。如下圖所示:


     上面的第二個方法其實也是去修改 org.eclipse.ui.ide.prefs 檔案,所以建議透過第二個方式去移除比較省事,也不用去找檔案在哪之類的問題。: )

[參考文章]

2014年5月22日 星期四

解決 Eclipse 執行時出現 "JVM terminated Exit code=2" 的問題

     昨天想要執行 Eclipse 時卻顯示下列畫面而無法正常的執行 Eclipse:


     除了這個以外,一些安裝的編譯器或者直譯器當執行時也出現下面錯誤訊息:


     想說是不是權限的問題,檢查了一下該有的權限都有應該沒又問題,而且之前明明都沒有任何問題,突然間怎麼變成這樣。

     關於 Eclipse 在 "Eclipse's error on startup in windows 7" 與 "What are the best JVM settings for Eclipse?" 文章中,你可以透過修改 eclipse.ini 檔案來解決執行 Eclipse 的問題。將下列參數加到 eclipse.ini 檔案內容的 openFile 之後即可。

-vm
C:/Program Files/Java/jre8/bin/server/jvm.dll

    雖然這樣可以解決 Eclipse 的問題,但其他的程式執行還是有問題,昨天似乎在個論壇有看到可能與防毒軟體或防火牆有關,今天試著先把 COMODO 防火牆移除,在執行其他程式,解果一切正常,把 eclipse.ini 修改回原來的內容,也可以正常執行了。結論,兇手是 COMODO 防火牆。如果有遇到相同情況可以試著先把防火牆或者防毒軟體先移除看看有沒有得解。


    

   

2013年11月24日 星期日

Eclipse 設定編碼方法

      當你載入其他人開發的專案或檔案時,有時會發現奇怪的字元時,就表示你的 Eclipse 預設的編碼方式與專案不同。 Eclipse IDE 提供三種設定編碼的方式:

  1. 設定單一檔案的編碼:只有該檔案被設定此編碼。
  2. 設定單一專案的編碼:只有所選的專案設定為此編碼。
  3. 預設所有專案的編碼:所有你新開的專案都以此設定為主,在 Windows 平台建議選擇 UTF-8 (繁體 Windows上 Eclipse 預設使用 MS-950 編碼 ),這樣切換到 Linux 上才不會要再設定一次。
      這三種設定的方式請參考下面的圖示:

  • 設定單一檔案的編碼


    • 設定專案的編碼
    • 預設所有專案的編碼

    [延伸閱讀]
         

    2013年11月17日 星期日

    透過 getenv 與 getProperties 取得系統環境變數與JVM屬性設定

          在 Java 中我們可以透過 System.getProperties() 取得 JVM 參數設定System.getenv() 來取得作業系統的環境變數設定。你可以在 The Java Tutorials 裡面參考 System Properties 與 Environment Variables 教學文章看到其他用法。

         如果你使用 Eclipse 你可以透過 -D<Key>=<Value> 的方式在 Run > Run Configurations... > (x)= Arguments > VM Arguments 來設定額外的 JVM 屬性設定。例如你可以填入 -DColor=blue 來設定 Color 屬性為 blue。如下圖所示:


    簡易的範例程式如下:
        // 列出目前所有的 JVM 屬性設定
        System.getProperties().list(System.out); 
        
        // 透過 getProperty 單獨取出特定的某個屬性設定值    
        System.out.println("Color = " + System.getProperty("file.separator"));    
    
        // 取出我們設定的屬性值,注意屬性名稱是 case sensitive
        // 如果你寫成 color 得到的會是 null
        System.out.println("Color = " + System.getProperty("Color"));
    
        // 你也可以使用下列方式,當所指定的屬性沒有鍵值時,回傳你所設定的預設值
        // 下面的範例當沒有設定 Color 屬性鍵值時會回傳預設的 Pink 值
        System.out.println("Color = " + System.getProperty("Color", "Pink")); 
    
        // 列出目前作業系統所有的環境變數設定
        Set<Map.Entry<String, String>> envSet = System.getenv().entrySet();
        for (Map.Entry<String, String> set: envSet) {
            System.out.println(set.getKey() + " = " + set.getValue());
        }
        // 透過 System.getenv(key) 的方式單獨取出你想要的屬性設定
        System.out.println("SystemDrive = " + System.getenv("SystemDrive"));
        System.out.println("TEMP = " + System.getenv("TEMP"));
    


    參考文章:



    2013年10月23日 星期三

    Eclipse Console 視窗取得輸入的問題

         剛剛在嘗試了一下,發現是輸入法的問題,如果發現無法輸入可以將輸入切換到一般英文的模式,不要切換到有任何中文的輸入法。 : )

         在 Java 中要取得 Console 視窗輸入的文字可以透過 Scanner 物件來達到,今天如果你使用Eclipse 來開發時,當你的程式在取得輸入文字前,如果有先列印出一段提示文字時,你會發現 Eclipse 的 Console 視窗的游標會在最前面 (請參考下圖),並不會接在你所列印的提示文字後面,此時,如果你直接輸入任何文字嘗試取得輸入,會發現 Eclipse Console 視窗並不會顯示任何文字,且即便你按 Enter 想要結束輸入,Eclipse Console 視窗也不會有任何反應,此時你只能按停止執行或者重新執行程式來逃離這個狀況。

         要解決無法取得輸入的情況,當你執行程式時,必須先將游標移到正確的位置,然後再輸入,此時 Eclipse Console 視窗就可以正確的取得輸入的文字,注意,如果你的提示文字使用 println 來顯示,你必須移到下一行的開頭,如果使用 print 來顯示,則必須將游標移到提示文字的最後面才可開始輸入文字。

         範例程式如下:
    import java.util.Scanner;
    
    public class InputDemo {
        public static void main(String[] args) {
            int number = -1;
            Scanner scanner = new Scanner(System.in);
            System.out.print("Input a number:");
            
            if (scanner.hasNextInt()) {
                number = scanner.nextInt();
            }
            scanner.close();
            System.out.println("You input a number " + number);
        }
    }
    
    

    2013年6月26日 星期三

    如何新增 Android XML 檔案

          在很多時候我們需要自己新增 Android XML 檔案,例如要支援多國語言、針對不同的螢幕大小、或者螢幕操作的方向 (port直向 / land 橫向)...等等的替代選擇性資源內容。
          透過 ADT 的工具我們可以很簡單的建立新的 Android XML 檔案,方法如下:

    1. 點選工具列的按鈕,如下圖所示:

    2. 選擇要加入的資源型態:

    3. 填入檔案名稱,這邊我們不需要填入副檔名,當建立後 ADT 會幫我加入。另外如果要建立替代選擇性資源,可按下圖的 Next 按鈕繼續設定裝置設定屬性。否則,直接按 Finish 即可在預設的資料夾(如: layout、value、drawable...etc. )內產生該檔案。

    1-2. 如果不點選工具列的按鈕,也可以透過點選專案,右鍵-> Android Tools -> New Resources File... 來叫出 步驟 2 的新增 Android XML 對話框。


    1-3. 步驟 2 的新增 Android XML 對話框的方式也可以透過點選專案,右鍵-> New-> Android XML File 來執行。

        另外,如果你想要新增的是翻譯,則可以透過 Android Graphical Layout 來快速產生簡單的替代選擇性資源資料夾 (只能設定 Language 與 Region,無法設定其他條件 如 ldpi/mdpi 或者 port/land...etc.)與空的 strings.xml 檔案,實際做法請參考下圖:





    2013年6月1日 星期六

    透過Eclipse 更新 Plug-in 後出現 Type R cannot be resolved to a variable

          今天透過 Eclipse "Check for updates" 去更新一些 plugin 後,在編譯 Android 時總是出現 "Type R cannot be resolved to a variable" 的問題,如下圖所示:

          我確定更新前是可以編譯成功,但不知為何更新完後卻無法編譯 Android project 了,之前更新都沒有遇到這樣的狀況;回想起來更新完後 Eclipse 有跳出一個視窗,但內容我倒是沒去注意,想說跟以前一樣要我重新啟動 Eclipse ,沒想到這次踩到地雷了...Orz.
        幸好似乎有不少人有類似的情況,上網 Google 了一下找到了─"Type R cannot be resolved to a variable" after Android SDK updated"。
         解決方式就是開啟 Android SDK Manager,沒意外應該會出現有可更新項目,將那些項目更新後就解決問題了。

        發生 Type R cannot be resolved to a variable 有很多原因,最主要是因為 R.java 無法自動產生出來,但是為何無法產生可能要去查看看 res 目錄下是否有任何錯誤。
        下面鏈結我是從 "“R cannot be resolved to a variable”?" 討論串中擷取出來的,如果發生的症狀並非與上面一樣的話,或許可以從下面找到你要的解答。