未維護
20170915184417 eclipse 配置又多又費時間,記錄下來以后可能用到
project explorer顯示項目不全
表現在新建項目都無法顯示,而import又提示project已經存在
解決:一般是由于在explorer中設置過以working set顯示,而新項目沒有添加進入set中
- 在explorer右上角三角符號配置,select working set->no working sets顯示所有項目
- 將項目添加入一個set中
- 顯示未加入設置的project: top level elements -> show 'other project' working sets
配置tomcat
標準版的eclipse是沒有安裝javaee工具的,如果沒有安裝javaee工具
- 使用http://download.eclipse.org/releases/neon
選中Web, XML, Java EE and OSGi Enterprise Development 對應的版本安裝
配置服務
- preference -> server -> runtime environments -> add -> 選擇對應的tomcat版本與tomcat目錄
注意:
- tomcat環境:到apache 官網下載對應zip包后查看running.txt有環境變量的配置,可以命令啟動
- 若按照配置好變量后提示服務未運行,需要在bin中cmd運行:server.bat install 寫入服務
eclipse配置tomcat服務三只小貓
這個需要eclipse 插件
- 下載插件zip包:
https://sourceforge.net/projects/tomcatplugin/
- 解壓后將features和plugins文件夾放入eclipse的根目錄下覆蓋
- 重啟eclipse就可以看到
配置eclipse tomcat管理啟動
preference -> tomcat 選擇對應版本和tomcat配置環境
eclipse不自動彈出提示
alt+/快捷鍵失效和 .調用方法時不提示
a.用于沒有一點提示的情況:依次打開eclipse上面的
- windows ——preferences ——java ——editor —— content assist ,在右上方有一行
- select the proposal kinds contained in the 'default' content assist list下面,
- 勾選Java Prolosals 復選框,保存退出即可。
b.此種方法用于打出單詞縮寫沒有提示的情況(例如:打出syso沒有提示):
- 依次打開eclipse上面的windows ——preferences ——java ——editor —— content assist,
- 在右邊部分偏下的地方找到“Auto activation triggers for java:”這一項,
- 后面是一個文本框,在后面的文本框輸入字母abcd,然后點擊 applay-->OK 保存退出,
- 選擇導出 File —— General —— Export 選擇preferences 再選中Export all 復選框(下面的不需要管),并指定導出文件的名字和路徑(注意只能導出.epf格式的文件)。
- 然后在你指定的路徑下找到剛剛導出的文件epf文件,(可以用記事本)打開它,
- 再找到剛剛輸入的abcd(或者abc),再在其后添加其余的22個英文字母,保存后,
- 再用eclipse的導入功能把該文件導入到eclipse中,就可以實現單詞聯想提示功能。
eclipse 出現引用外部api時不能提示代碼和智能導包
如使用mysqldatasource出現:Access restriction: The type 'MysqlDataSource' is not API... 而且eclipse不會提示導包,只能看到包路徑,不能看到包的類
Eclipse中有一種叫做存取限制的機制,來防止你錯誤使用那些非共享的API。通常來說,Eclipse做的是對的,因為兩點,我們不想要使用非共享API的,而且Eclipse知道什么是共享的和非共享的API。但是有時我們想要使用非共享的API,比如說用gmail的來發送和接收郵件,要用到SSL。這個就是非共享的API。這時候我們就要更改一些設置了。
更改的步驟如下:
- window-java-compiler-Error/Warning-Deprecated and Restricted API-Forbidden reference那里,設置成Ignore即可。
- 如果依然無法提示,可以將forbidden reference和discouraged reference 同樣設置ignore
在eclipse中添加jar后添加對應的源代碼和api文檔
- window -> java -> installed jars -> 選擇jre版本進入 edit JRE -> 選擇對應的.jar文件 -> source attachment 或 javadoc location
- 添加源文件:進入source attachment configuration界面
- 可以選擇源代碼的zip jar 文件夾都可以
- 如E:\Major\Java\resource\mysql-connector-java-5.1.44\src
- 選擇mysql驅動源代碼
eclipse在代碼修改后運行時不自動保存
- preferences -> run/debug -> launching
- save required dirty editors before launching中三個選項
- 選always就自動保存
- 選prompt就提示保存
- 選never從不保存
貌似可以直接點擊run按鈕運行沒有運行過的java程序了
eclipse 批量更改java文件中特定的字符串
- Search -> File Search
- containing text: 選擇要匹配的字符串如:edu.princeton.cs.algs4.Stack
- 可選 區分大小寫,正則匹配,完整匹配
- 范圍scope:一般來說選擇當前項目enclosing projects
- 點擊replace 或 search就可以完成了
eclipse 運行java程序時控制臺出現錯誤:
錯誤信息:
an internal error has ocurred nullpointerexception
解決方法:將控制臺關閉,然后再打開控制臺就好了
- 右鍵側邊欄的控制臺可選擇close
- 點擊導航欄的控制臺圖標就可以顯示。
或者
導航欄中的Window-> show view ->選擇console可以打開控制臺
將eclipse中的web項目部署到tomcat/webapps中
eclipse并不像MyEclipse默認將項目部署到tomcat安裝目錄下的webapps中,而默認部署到工作目錄下workspace.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps中。(tmp0、tmp1的不同是目前這個server容器的順序)
解決:
導航欄中的Window->show view->servers->找到需要修改的tomcat->右擊
- 停止eclipse內的tomcat服務器(stop)
- 刪除該容器中部署的項目(add and remove)
- 清除該容器相關數據(clean)
- 打開tomcat的修改界面(open)
- 找到servers location, 選擇第二個(User tomcat Installation)
- 修改deploy path為webapps
- 保存關閉
參考:
https://www.cnblogs.com/shenpengyan/p/6095488.html
eclipse中快捷鍵失效
表現在使用format element時無法ctr+shift+f格式化代碼,但是其他快捷鍵都有效
解決方法:
快捷鍵失效最常見的就是和搜狗輸入法快捷鍵沖突!!
- 打開搜狗輸入法屬性設置->搜索 快捷鍵 ->找到系統功能快捷鍵
- 可以看到 繁簡切換 快捷鍵ctr+shift+f勾選的。
- 將其更換快捷鍵或禁用
- 點擊確定保存
為eclipse配置javap命令
- 點擊菜單欄 Run ---> External tools ---> External tools Configurations...
- 在External tools Configurations左邊找到program -> 右擊new
- 在新窗口中配置下面的內容:
Name: javap
Locations: 選擇jdk的javap.exe文件所在的位置
Working Directory: {project_name}
Arguments: -classpath bin -c ${java_type_name}
說明:
{project_name}表示項目的名稱;
${java_type_name}表示所選java文件的類名(全名);
- 然后點擊apply 后點擊run就可以運行了
可以在導航欄的run快捷按鈕右邊找到剛配置的javap的快捷按鈕
參考:http://blog.csdn.net/ricciozhang/article/details/46994485
配置自定義類庫
通常的大型項目,都需要很多JDK系統自帶類庫之外的其他類庫支持,例如:jdbc鏈接的類庫、Struts類庫等。那么對于在多項目開發中,建議使用用戶類庫來分類管理不同的JAR文件,這樣就做到了在多個項目中可以共享指定分類的jar文件,也避免了每一個項目都需要單獨保存類庫文件的弊端,很大程度上提高了類庫的重用性;
- 打開eclipse選擇菜單Window->Preferences
- 彈出界面選擇Java->Build Path->User Libraries
- 點擊右側的New…按鈕,創建一個新的用戶庫
- 輸入用戶庫的名稱,如:Struts2,點擊OK按鈕
- 選中添加的庫,如“Struts2”點擊“Add JARS…”按鈕,添加用戶庫所需的庫文件
- 最后確定OK就行了
如何應用用戶類庫(分配給特定項目)
- 選中項目,右鍵Properties
- 彈出對話框樹形結構選擇Java Build Path ,右邊選擇“Add Library”
- 彈出界面選擇“User Library”,點擊“Next”
- 彈出界面選擇需要的用戶庫,點擊“Finish”
linux eclipse 快捷鍵更改
win和linux常用的快捷鍵可能會有些不兼容,如代碼提示alt+/在linux中就不可用,而是被word completion占用
- 導航欄 window --> preferences --> general --> keys
- 輸入 alt+/ 查看已經綁定的快捷鍵然后清除
- 找到content assist 添加快捷鍵alt+/
參考:
http://blog.sina.com.cn/s/blog_498610450102vrog.html
源代碼文件使用space代替tab
- window -> preference -> General-> Editors -> Text Editors,選中右側的 insert space for tabs;如
- window -> preference -> Java -> code style ->formatter,點擊右側的edit
然后選擇左側 tab policy的值為spaces only(這里應該通過New button打開該界面)
注意:原來的文件無法直接轉換為spaces填充,只有新建的文件才能使用空格填充
參考:https://www.cnblogs.com/sirwang/p/5763448.html
使用maven構建web項目,項目上有紅叉提示錯誤,但是錯誤找不到
解決方法:eclipse生成的maven項目動態web module版本不能支持3.X的問題
配置代理
已維護
源碼閱讀
在eclipse上閱讀源碼,默認的配置會導致一堆錯誤,影響閱讀
- 禁止自動編譯
- 取消勾選
Project->Build Automatically
- 清除編譯文件
mvn clean
- 取消勾選
禁止編譯后可能會導致無法解析額外的類的信息,如繼承結構、方法引用等
- 禁止錯誤報告
- 取消勾選
Window->Java->Editor->Report problems as you type
- 取消勾選
配置編譯時注解
編譯時注解使提示錯誤信息。如僅允許注解在class上的@Solution
,效果如圖:
方法1
-
配置processor
- Right click on the project and select Properties.
- Open Java Compiler -> Annotation Processing. Check "Enable annotation processing".
- Open Java Compiler -> Annotation Processing -> Factory Path. Check "Enable project specific settings".
- Add your JAR file to the list.
- Clean and build the project.
- 檢查annotation processor是否生效
打開Error Log,Window->Show View->Other->General->Error Log
,如果processor無效則會在顯示異常信息
參考
方法2
對于標準配置的processor jar包,在maven配置processor依賴,不需要每次都配置eclipse項目processor,而且eclipse maven update后不會導致factory path配置丟失,直接從maven 依賴中獲取
注意:如果需要eclipse自動從maven配置中加載processor jar,需要關閉eclipse 關聯的項目如leetcode project關聯引用 processor project。當processor是在eclipse打開時,可能不會自動加載注解處理器到factory path,如圖
關閉processor項目直接讓eclipse引用maven repo jar依賴即可