每個Java程序員需要了解的8個Java開發工具

jopen 8年前發布 | 20K 次閱讀 Java開發

Java是計算機應用程序編程語言,被廣泛用于創建Web應用、服務器處理、用戶端的API開發乃至數據庫等多個領域。下面列出了8個有助于你開發Java應用程序最好的Java工具。(在轉發的基礎上,我又補充了幾個)

1. SparkJava

這是一款體形輕巧,功能強大的Web應用框架。Spark擁有簡單而直接的方法。您可以通過一些繁瑣的XML配置來使用Spark框架編寫應用程序。Spark能讓你花費最少的精力來開發Java的Web應用程序。Spark是一個類似于Sinatra的微型Web開發框架,最新支持Java8和lambdas。Spark是完全開源的,Github上有它的源代碼

官方網站:http://sparkjava.com/

主要功能:

  • 第一次部署非常快速而簡單
  • 靈活的路由匹配
  • 它有一個模板引擎,可以創建支持Freemarker, Apache Velocity 和 Mustache的可重用組件
  • 可作為獨立的Spark運行在Jetty上,也可以運行在Tomcat上

獨特之處:一張圖能抵過1000個單詞,而一個屏幕截圖的威力更大,誰用誰知道~

起源:Spark是由來自于瑞典的Per Wendel發起的,不過一共有20多個開發人員參與了后來的開發

2.  jClarity

jClarity是兩款產品的結合:illuminate用于性能監控,而census則可以收集日志和分析數據。jClarity支持云集成,并且其框架緊湊輕巧。

官方網站:http://www.jclarity.com/

主要功能:

  • 故障檢測((Disk I/O,垃圾收集,死鎖等等)
  • 操作建議 - 對故障提出解決建議,如"The application needs to increase the number of active threads".
  • 解釋 - 給出問題出現的原因,如"A high percentage of time spent paused in GC may mean that the heap has been under-sized".

獨特之處:該工具和其他性能監控工具之間的一個區別是,它簡化了問題報告并用簡單的英語描述了建議解決方案。

起源:JClarity誕生于London,創始人是 Martijn Verburg, Kirk Pepperdin and Ben Evans,這三位都是Java性能領域的老將。

3. Clover

Clover是用于代碼覆蓋的一大利器。該工具有助于用于應用程序測試的代碼。我們可以在IDE或持續集成系統中運行Clover。該工具能讓測試的運行速度更快。

官方網站:https://www.atlassian.com/software/clover/overview

4. JProfiler

JProfiler擁有直觀的用戶界面,可以幫助你解決性能瓶頸和理解問題。JProfiler能讓你輕松約束內存泄漏和修復線程的問題。

官方網站:http://www.ej-technologies.com/products/jprofiler/overview.html

5. VisualVM

VisualVM是一個集多功能于一身的Java 故障排除工具。你可以使用VisualVM整合多命令行JDK工具。此輕便的工具有著驚人的分析能力。你可以在各種技術,如jvmstat、JMX和Serviceability Agent(SA)中使用VisualVM。VisualVM最出名的是附加了API,以獲得更多的數據,以及自動使用更快捷。

官方網站:http://visualvm.java.net/

6. Elasticsearch

Elasticsearch提供了可以整合現有的應用程序來驅動其與輸入數據的交互的工具。這款開源工具提供了 實時搜索和分析引擎。Elasticsearch可用于可靠性和可擴展性作為重要因素的分布式環境。該工具提供了超簡單的全文搜索體驗。 它是一個創建于 Apache Lucene 上的開源項目,由Github上的兩百多個開發者義務維護。

官方網站:http://www.elasticsearch.org/

主要功能:

  • 接近實時文檔存儲,每個字段都是可索引可檢索的。
  • 它的分布式搜索架構支持小型到大型的應用程序
  • RESTful和原生Java API,還有針對Hadoop的庫
  • 開箱即用,也不需要程序員對搜索有很深入的了解,更棒的是它還提供免費模式

獨特之處:非常容易上手,無需定制核心功能和繁雜的自定義選項。

起源:Elasticsearch由Shay Banon在2010年創立,并且在最近剛剛獲得7000萬美元的融資。這個應用其實最開始是Banon為他的妻子開發的,便于她搜索最喜歡的食譜,很有愛吧~

7. Sonarqube

Sonarqube是一個用來 管理代碼質量的開放式平臺。基于Web的應用程序可以與Java應用程序進行配置。它提供了規則、警報、閾值、排除和設置功能。 SonarQube允許用戶將指標結合在一起,以及使用歷史的措施混合。

官方網站:http://www.sonarqube.org/

8. Takipi

Takipi是一個輕量級的Java代理。Takipi安裝方便,用不了幾分鐘就可以搞定。它對代碼注釋或配置并沒有要求。你可以使用一臺具有完全功能的服務器與Takipi工作。此款 Java工具能幫助你減少調試時間。Takipi的目標很簡單:告訴開發者代碼崩潰的時間及原因。無論在何時發生異常,Takipi都會抓取到并給出分析報告。

官方網站:https://www.takipi.com/

主要功能:

  • 檢測 - 抓取異常、HTTP和登陸錯誤
  • 重點排查-經常發生錯誤的集群,分析錯誤率是否有上升
  • 分析-查看實際代碼和變量狀態,甚至通過不同的機器和應用程序。

獨特之處:在代碼出現錯誤時即時報告錯誤。

起源:Takipi誕生于2012年的舊金山和Tel Aviv(特拉維夫市)。每個異常類型和錯誤都有獨一無二的monster表示。

—————————————————————————————————————————————

9. Bintray - 文檔分享平臺

Bintray為Java開發人員提供了一個可以 分享代碼的平臺,它上面有85000多個文件包,18,000多個庫。對了,你一定會想到GitHub,這個網站也可以用GitHub的賬號登陸哦。

主要功能:

  • 上傳文檔,與全世界各地的開發人員交流
  • 可以用Gradle / Maven / Yum / Apt下載代碼庫,當然也可以直接下載
  • 管理發布信息和文檔
  • REST API-搜索/檢索文檔并自動分配

獨特之處:Bintray的基本功能類似于Maven Central,但是Bintray有社交特性,上傳文件的步驟也更加簡便。

起源:Bintray由以色列創業公司JFrog創立,于去年四月發布,并贏得了JavaOne協會的Duke's選擇獎。

10. Librato –監測&可視化云服務

Librato是一個 監測和管理云應用程序的托管服務,它可以在幾秒中之內創建自定義 儀表盤,不需要安裝或者部署任何軟件。最棒的是它和其他儀表盤比起來更加順暢。

主要功能:

  • 數據收集:集成了Heroku、AWS、數以萬計的代理(包括Nest),綁定了Java、Clojure等開發語言。
  • 自定義報表:通過HipChat, Campfire,郵件或者HTTP POST請求發出指標或警報。
  • 數據可視化:用漂亮的圖表展示注釋、關聯、分享和插入選項。
  • 警報:當指標超出某個閥值時自動發出警報。

獨特之處:Librato幾乎可以表現任何東西,并且把數據變得有意義。

起源:Librato來自于美國舊金山,由Fred van den Bosch, Joe Ruscio, Mike Heffner 和 Dan Stodin合作開發。

11. Plumbr – 內存泄漏檢測

發生 內存泄漏時怎么辦?用Plumbr,它可以檢測出應用程序的內存泄漏問題并提供切實可行的解決方案。

主要功能:

  • 實時內存泄漏檢測和警報
  • 并提供泄漏的時間、大小、速度和重要性的報告
  • 代碼中內存泄漏的位置

獨特之處:快速定位泄漏點,并給出詳盡的解決方案,再也不用擔心內存泄漏問題啦~

起源:創立于 Estonia,創始人包括Priit Potter, Ivo M?gi, Nikita Salnikov-Tarnovski 和 Vladimir ?or,都是Java團隊中很有實力的人物。


來自: http://www.codeceo.com/article/8-best-java-tools-every-java-programmer-must-use.html

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!