Java开发工具可以促进编程!

Java开发人员通常尝试找到快速有效地编写高质量Java代码的方法,以使他们的编程工作更轻松。 由于情况发生了变化,因此出现了越来越多的工具。 因此,下面列出了大多数开发人员已经使用,将来使用或一定会使用的有用工具。 该列表包括集成开发环境,集成工具,测试和质量工具,甚至更多。

集成开发环境

Eclipse是大多数开发人员使用的最著名的Java集成开发环境(IDE)。 它允许开发人员将语言支持和其他功能组合到其任何默认软件包中,并且Eclipse Marketplace允许几乎无限的自定义和扩展。

IntelliJ引起了开发人员的兴趣,因为最近它比Eclipse更受青睐。 它提供免费和专有的商业版本。 IntelliJ为许多Java EE框架提供了出色的特定于框架的编码帮助和提高生产力的功能,以及用于大多数应用程序服务器的部署工具。

NetBeans也属于IDE类别,可以快速轻松地开发桌面,移动和Web应用程序。 它是免费的开放源代码,并拥有一个由用户和开发人员组成的全球社区。

Jdeveloper是Oracle提供的免费集成开发环境。 它提供对Oracle Fusion Middleware和Oracle Fusion Applications的完整的端到端开发,并支持整个开发生命周期。

测试中

Junit是一个简单的开源框架,用于编写和运行可重复的测试。 它提供了用于测试预期结果的断言,用于共享通用测试数据的测试装置以及用于运行测试的测试运行程序。 您可以在此处查看我们的最终教程。

TestNg的灵感来自JUnit,但包含一些使其变得更强大且更易于使用的新功能,例如注释,灵活的测试配置,数据驱动的测试和参数支持,强大的执行模型。 它涵盖了单元,功能,端到端,集成测试,并受各种工具和插件(Eclipse,IDEA,Maven等)的支持。 分别使用Maven Failsafe和TestNG来查看有关运行单元测试和集成测试的文章。

Mockito是一个模拟框架,允许您使用简洁的API编写漂亮的测试。 测试具有很高的可读性,并且会产生明确的验证错误。 使用Mockito,您会询问执行后的交互问题。 模拟是透明的,使开发人员可以专注于测试选定的行为,而不是吸引注意力。 在此处查看有关Mockito的文章。

Arquillian是Java和JVM的测试平台,主要侧重于集成和功能测试。 它从单元测试停止的地方开始,重点关注真实运行时环境中应用程序代码的交互。 Arquillian为测试配备了容器生命周期管理和丰富的测试用例。

积分

Apache Maven是一个非常著名的软件项目管理和理解工具。 基于项目对象模型(POM)的概念,它从中央信息管理项目的构建,报告和文档。 Maven提供统一的构建系统,高质量的项目信息,最佳实践开发指南,并允许透明迁移到新功能。

Gradle是一个开源的构建自动化系统。 Gradle可以使软件包或其他类型的项目(例如生成的静态网站)的构建,测试,发布,部署以及更多自动化。 Gradle将Ant的强大功能和灵活性与Maven的依赖管理和约定结合在一起,成为一种更有效的构建方式。

Apache Ant是一个开放源代码的Apache项目,根据Apache软件许可发布。 它由内置任务组成,允许开发人员编译,组装,测试和运行Java应用程序。 它非常灵活,并且对Java项目的编码约定或目录布局没有限制。

Apache Ivy是流行的依赖项管理器,专注于灵活性和简单性。 它是Apache Ant项目的一个子项目,Ivy致力于解决项目依赖项。 外部XML文件定义项目依赖关系,并列出构建项目所需的资源。 然后,Ivy从工件库中解析并下载资源。 它提供了灵活性和可配置性。 Apache Ivy与Apache Ant集成在一起,从而为那些已经使用Apache Ant并不想迁移到Apache Maven的用户带来Apache Maven的依赖管理优势到Apache Ant构建文件中。

应用服务器

Apache Tomcat是由Apache Software Foundation(ASF)开发的开源Web服务器和servlet容器。 它实现了多个Java EE规范,包括Java Servlet,JavaServer Pages(JSP),Java EL和WebSocket,并提供了Java代码可在其中运行的HTTP Web服务器环境。( 在此处查看更多信息 。)

Wildfly是以前已知的JBoss AS ,或简称为Jboss 。 它是由JBoss编写的应用服务器,现在由Red Hat开发。 它用Java编写,并实现了Java平台企业版(Java EE)规范。 Wildfly可在多个平台上运行,它是免费的开放源代码。

Glassfish是Sun Microsystems针对Java EE平台启动的一个开源应用服务器项目,现在由Oracle Corporation赞助。 支持的版本称为Oracle GlassFish Server。 GlassFish是一种免费软件,具有两个免费软件许可证双重许可:通用开发和发行许可证(CDDL)和GNU通用公共许可证(GPL)(带有类路径例外)。

Oracle WebLogic Server是Oracle Corporation当前开发的Java EE应用程序服务器,用于构建和部署企业Java EE应用程序,并支持新功能,这些功能可降低运营成本,提高性能,增强可伸缩性并支持Oracle Applications产品组合。

Web应用程序测试

Apache JMeterApache的开源项目,实际上是一个Java应用程序,旨在加载测试功能行为并衡量性能。 它最初是为测试Web应用程序而设计的,但此后已扩展到其他测试功能。 它可以测试静态和动态资源上的性能,还可以模拟一台或多台服务器上的繁重负载,以测试其强度或分析不同负载类型下的整体性能。 您可以在此处查看有关JMeter的更多信息。

SoapUI是一个免费的开源跨平台功能测试解决方案。 它提供了图形界面和企业级功能,并允许您创建和执行自动化功能,回归,合规性和负载测试。 SoapUI在一个测试环境中提供了完整的测试范围,并支持所有标准协议和技术。

质量分析

SonarQube是一个开放源代码平台,已成为代码质量管理系统的世界领导者,并且以其对代码质量的持续检查而闻名。 除Java外,它还支持大多数语言,可以用作Android开发的一部分,并且可以与大多数持续集成工具集成。 它生成有关重复代码,编码标准,单元测试,代码覆盖率,复杂代码,潜在错误,注释以及设计和体系结构的报告。

FindBugs也是开源的,并根据Lesser GNU Public许可的条款进行分发。 它对Java字节码而不是源代码进行操作。 它可以识别并确定潜在错误的严重性,例如空指针取消引用,无限递归循环,对Java库的错误使用和死锁。 它可以作为Eclipse,NetBeans和IntelliJ IDEA的插件使用。 查看我们的Findbugs Eclipse示例 。

PMD是源代码分析器。 它可以检测常见的编程缺陷,例如未使用的变量,空的catch块,不必要的对象创建等。 除了Java之外,它还支持大多数语言,并包括CPD(复制粘贴检测器)。

Checkstyle是一种开发工具,可帮助程序员编写符合编码标准的Java代码。 它使检查Java代码的过程自动化。 它是高度可配置的,并且可以使其支持几乎所有编码标准。

版本和修订

Apache Subversion是我们所有人已知的SVN工具。 它是在开源许可证下分发的软件版本控制和版本控制系统。 现在,它是作为Apache Software Foundation的一个项目开发的,因此,它是一个由丰富的开发人员和用户组成的社区的一部分。

Git是一个免费的开源分布式版本控制系统,旨在快速高效地处理一切。 Git超越了其他SCM工具,提供了诸如廉价的本地分支,便捷的暂存区以及多个工作流之类的功能。 每个Git工作目录都是功能完善的存储库,具有完整的历史记录和完整的版本跟踪功能,而与网络访问或中央服务器无关。 在此处查看有关Git的文章供初学者使用。

持续集成

Jenkins是一款屡获殊荣的应用程序,它可以监视重复作业的执行,从软件项目到cron所执行的作业。 它的基本功能是连续构建和测试软件项目,使开发人员更容易将更改集成到项目中,并使用户更容易获得全新版本。 Jenkins还提供监视外部运行的作业(例如cron作业)的执行,甚至监视在远程计算机上运行的那些作业的执行。

Apache的Continuum是一种企业就绪的持续集成服务器,具有自动构建,发布管理,基于角色的安全性以及与流行的构建工具和源代码管理系统的集成等功能。

Hudson是用Java编写的持续集成(CI)工具,可在应用程序服务器中运行。 它支持诸如Subversion,Git之类的SCM工具,并且可以执行基于Apache Ant和Apache Maven的项目,以及任意的shell脚本和Windows批处理命令。 它监视重复作业的执行,例如构建软件项目或cron运行的作业。

Java Profiler

YourKit Java Profiler是技术领先者,是用于分析Java应用程序的最具创新性和智能性的工具的创建者。 您可以将YourKit解决方案用于CPU和内存性能分析,并且可以以最高的生产率和零开销来分析大型应用程序。 有许多最新的概要分析创新已在大型和小型公司的专业Java开发人员中赢得了应有的欢迎。

JProfiler是一种商业许可的Java性能分析工具,对于分析性能瓶颈,内存泄漏,CPU负载和解决线程问题非常有用。 它支持在同一台计算机或远程计算机上进行概要分析。 用户可以通过活动字节和总字节,实例,线程,类和垃圾收集器活动的直观表示实时查看。 它既可以作为独立应用程序使用,也可以作为Eclipse软件开发环境的插件使用。

代码覆盖率工具

JaCoco是用于测量和报告Java代码覆盖率的开源工具包。 它根据Eclipse Public License的条款进行分发,并且是当前唯一可与Java 8一起使用的字节码覆盖工具。

Clover是一种商业代码覆盖率工具,可提供所需的指标,以更好地平衡编写有填充作用的代码与测试有填充作用的代码之间的工作量。 它可以在您的IDE或持续集成系统中运行,它包括测试优化以使您的测试运行更快,并且失败更快。

错误追踪

JIRA是团队规划和打造出色产品的跟踪器。 成千上万的团队选择JIRA来捕获和组织问题,分配工作并关注团队活动。 它不是免费的,但是提供了7天的免费试用期。

Trac是用于软件开发项目的增强的Wiki和问题跟踪系统。 它使用基于Web的软件项目管理的简约方法。 它可以帮助开发人员编写出色的软件,并提供Subversion和Git(或其他版本控制系统)的界面,集成的Wiki和便利的报告功能。 Trac允许在问题描述和提交消息中使用Wiki标记,在错误,任务,变更集,文件和Wiki页面之间创建链接和无缝引用。

文档生成器

Javadoc是Oracle Corporation的文档生成器,用于从Java源代码生成HTML格式的API文档。 IDE会自动生成Javadoc HTML。 许多文件编辑器可帮助用户生成Javadoc源,并将Javadoc信息用作程序员的内部引用。 Javadoc还提供了用于创建doclet和taglet的API,使您能够分析Java应用程序的结构。

文献! X是自动Java文档工具和完整文档创作环境的组合,可用于为Java项目创建准确,专业的质量文档。 它自动将生成的文档与流行的Java IDE集成在一起。 它提供了为库,名称空间,类,接口,构造函数,方法,属性,字段生成的文档页面。

因此,这是每个Java开发人员都可以检出的工具的基本列表。 随意尝试!

您还有其他工具可以建议吗? 请在下面的评论中告诉我们!

翻译自: https://www.javacodegeeks.com/2015/02/java-development-tools-programming-boost.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/360473.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux cmake装在自己目录下,如何在Linux下安装cmake

全部展开OpenCV 2.2和更高版本需要使用Cmake生成生成文件,因此需要先安装cmake. 还有其他需要先安装cmake的软件1. 在Linux环境中打开Web浏览器,输入URL:mac cmake gui,找到最新版本的位置. 通常,发布了两个版本的开源软件: “源分…

Java Bootstrap:Dropwizard与Spring Boot

如何在尽可能短的时间内使准备就绪的Java应用程序投入生产? 我不是一个早起的人,所以有时需要一些时间才能启动“所有系统”提示。直到不久之前,这对于Java应用程序来说都是正确的,但是与发明贪睡功能不同闹钟,我们将在…

linux 查看libusb版本,linux / libusb获取usb设备路径

我使用libusb来枚举一些usb设备.现在我想获得“设备路径”.我认为这不是usb device-path,因为我没有成功使用谷歌.如果我用linux连接usb设备,我会在dmesg中收到一条消息,这里有一些带有usb温度传感器的“设备路径”的例子(类似于this):H_301_3直接到usb端口&#xf…

如何使用Apache Drill分析高度动态的数据集

当今的数据是动态的,并由应用程序驱动。 由诸如Web /社交/移动/ IOT等行业趋势驱动的新业务应用时代的增长正在生成具有新数据类型和新数据模型的数据集。 这些应用程序是迭代的,并且关联的数据模型通常是半结构化的,无模式的且不断发展的。 …

MVC中不能使用原生态的#include ,可替代的解决方案

<!--#include file"../stuff/foo/box.aspx"--> 1.可以用 <%: Html.Partial("~/Views/foo/box.ascx") %>OR <% Html.RenderPartial("~/Views/foo/box.ascx"); %> 2. Html.Raw(File.ReadAllText(Server.MapPath("~/html/te…

linux备份日志文件脚本,Linux篇:Shell脚本实现Gitlab双备份

01 前言最近成功从架构组拿到了Gitlab的管理权限&#xff0c;第一件事就是想着如何备份&#xff0c;以防数据丢失背大锅&#xff0c;于是在网上搜索一番&#xff0c;发现一段非常赞的备份脚本&#xff0c;记录照着操作一下&#xff1a;尤其是第二篇文章博主&#xff0c;有非常多…

物理数据模型(PDM)-概念数据模型 (CDM)-面向对象模型 (OOM):适用于已经设计好数据库表结构了。...

步骤如下&#xff1a; 一、反向生成物理数据模型PDM 开发环境 PowerDesigner 15 ,SQL Server2005 &#xff08;1&#xff09;在开始逆向生成PDM图之前&#xff0c;需要为指定的数据库创建ODBC数据源。以Windows xp操作系统为例&#xff0c;选择“开始”/“运行”命令&#xff0…

带有Hibernate OGM的NoSQL –第二部分:查询数据

1月底发布了Hibernate OGM的第一个最终版本之后&#xff0c;团队一直在忙于制作一系列教程式博客&#xff0c;使您有机会轻松地从Hibernate OGM重新开始。 第一部分是关于设置和保留您的第一个实体 。 在第二部分中&#xff0c;您将学习如何查询数据。 Hibernate OGM将使您以几…

Linux下做一个arp欺骗程序6,LINUX下防ARP欺骗攻击

arp欺骗的原理不多述&#xff0c;基本就是利用发送假的arp数据包&#xff0c;冒充网关。一般在网上通讯的时候网关的IP和MAC的绑定是放在arp 缓存里面的&#xff0c;假的arp包就会刷新这个缓存&#xff0c;导致本该发送到网关的数据包发到了欺骗者那里。解决的办法就是静态arp。…

MySQL作为Kubernetes服务,可从WildFly Pod访问

Kubernetes上使用Vagrant的Java EE 7和WildFly&#xff08;技术提示&#xff03;71&#xff09;介绍了如何在使用Kubernetes和Docker托管的WildFly上运行琐碎的Java EE 7应用程序。 Java EE 7应用程序是在世界范围内交付的动手实验室 。 它使用与WildFly捆绑在一起的内存数据库…

几个最短路径算法Floyd、Dijkstra、Bellman-Ford、SPFA的比较

几大最短路径算法比较 转自&#xff1a;http://blog.csdn.net/v_july_v/article/details/6181485 几个最短路径算法的比较&#xff1a;Floyd 求多源、无负权边的最短路。用矩阵记录图。时效性较差&#xff0c;时间复杂度O(V^3)。 Floyd-Warshall算法&#xff08;Floyd-W…

linux系统creat函数,Linux系统调用之creat函数

Linux中系统调用很多&#xff0c;但是再多也有几种不变的根本&#xff1a;创建&#xff0c;打开&#xff0c;写&#xff0c;读&#xff0c;关闭&#xff0c;删除&#xff0c;等最最基本的操作&#xff0c;就像人们所常说的&#xff0c;Linux上的一切我们都可以当做文件来处理&a…

防止在多模块Maven中找到“未找到插件”

在多模块Maven项目的子模块上定义Maven插件会给我们“找不到插件”错误。 尤其是如果我们有一个多模块项目&#xff0c;并且只想在一个特定模块中应用Maven插件&#xff0c;则此错误会经常发生。 假设我们有一个看起来像这样的多模块root pom。 <project xmlns"http:…

linux 4412跑程序,荣品4412的板子上跑纯linux

昨天开始突然想在4412上面跑人QT玩&#xff0c;首先得跑个纯linux昨天做好第一步&#xff0c;把根文件系统&#xff0c;用make_ext4fs 打包。make_ext4fs -l 34M -s system.img minifs/然后在uboot启动命令中把启动参数修改&#xff1a;setenv bootargs noinitrd root/dev/mmcb…

ASP.NET MVC 笔记

&#xff08;从今天开始&#xff0c;还是换回默认的代码高亮插件吧。。。话说此篇仅供个人遗忘后查阅&#xff0c;木有详尽解释。。。&#xff09; 1、Controller中的所有Action方法不限制返回值类型&#xff0c;返回值应该至少可以被ToString()&#xff0c;这样最终页面上呈现…

JPA 2.1:不同步的持久性上下文

JPA 2.1版带来了一种新的方式来处理持久性上下文与当前JTA事务以及资源管理器之间的同步。 术语资源管理器来自Java事务处理API &#xff0c;它表示操纵一个资源的组件&#xff08;例如&#xff0c;使用JDBC驱动程序操纵的具体数据库&#xff09;。 默认情况下&#xff0c;容器…

麒麟Linux启动目录,优麒麟目录结构介绍 系统入门必备

对于Linux爱好者来说&#xff0c;深入了解Linux文件目录结构的标准和每个目录的详细功能&#xff0c;对于我们用好Linux系统至关重要&#xff0c;下面就由小编给大家介绍下优麒麟系统的目录结构&#xff0c;PS: 同样适用于其他Linux发行版。查看系统的全部目录&#xff1a;* 在…

java课堂作业(一)

1、环境变量配置参见&#xff1a;http://www.cnblogs.com/dongwenbo/p/3282014.html window ---> preference ---> java ---> installed jres ---> add jres tomcat 配置&#xff1a;myeclipse ---> preferences ---> myeclipse enterprise workbench --->…

为什么我的JVM访问的内存少于通过-Xmx指定的内存?

“嘿&#xff0c;你能来看看奇怪的东西吗&#xff1f;” 这就是我开始研究一个支持案例的方式&#xff0c;该案例将我引向了这篇博客文章。 当前的特殊问题与不同的工具报告了有关可用内存的不同数字有关。 简而言之&#xff0c;一位工程师正在研究特定应用程序的过多内存使用…

linux怎么安装高德导航软件,高德地图车机版如何安装?高德地图车机版安装教程...

高德地图车机版是高德为汽车车载机提供的一个专用版本&#xff0c;对于车主们来说有时候用手机导航实在是非常不方便&#xff0c;不仅屏幕小而且还可能中途来个电话什么的。高德地图车机版可以帮你的车载机装上导航地图&#xff0c;就算你不想买导航设备也能让你的车子为你导航…