eclipse - 如何确定我的 Java 应用程序的最低 JRE 版本和系统要求

标签 eclipse java requirements system-requirements

我已经使用 Eclipse IDE 用 Ja​​va 编写了一个应用程序,现在我需要知道运行该应用程序所需的最低 JRE 版本!我知道某些方法只能在后来的 JRE 下使用,但我想知道找出我的应用程序的最高要求的最简单方法是什么,所以任何建议都将不胜感激......

此外,虽然我在讨论需求主题,但如果有任何建议或方法来确定我的软件的最低系统需求,我将不胜感激 - 即最小内存量...

提前致谢

最佳答案

  • 方法 1:对于最低 JRE 版本,这将很难。最简单的方法是简单地要求您正在构建的相同版本,或者更高版本,例如JRE 6.x.x 或更高版本。
  • 方法 2:安装多个 JDK,使它们在 Eclipse 中可用,然后只需更改您正在构建的版本,每次运行您的应用程序的测试套件,并确保它们全部通过。允许所有测试通过的最早版本的 JDK 是它可以运行的最低 JRE。 仅仅让您的应用成功编译是不够的,因为以前版本的 JRE/JDK 可能存在允许成功编译的错误,但不允许允许正确的程序执行。
  • 方法 3:始终在客户端要求最新版本,因为 Oracle 不断修补安全漏洞,最终,最好要求最新版本,如果您有这种控制权, 在客户端。

就 RAM 而言,这很简单。当 JVM 启动时,它会设置一个“最大”RAM 量(我相信默认值可能是 128MB),这是一个硬性限制,您的应用程序不能超过而不会崩溃。随着时间的推移分析您的应用程序,调整 JVM 上的内存设置,并找出您的应用程序运行所需的最小 RAM 量(a)以可接受的性能,以及(b)不抛出 OutOfMemoryError ,你就完成了。

引用:How to configure JVM options and memory?

对于 CPU 请求等其他要求,事情变得有点模糊。那里有很多 CPU,给定系统产生的吞吐量不仅取决于 CPU 速度,还取决于硬盘驱动器的速度、系统中安装的 RAM 数量、网络接口(interface)的速度(如果您正在编写网络应用程序)和其他内容。对于这样的要求,您将只想在各种系统上对其进行测试,然后在某处画一条线,然后说,“如果您拥有至少与 X、Y 一样强大的硬件,您就可以获得可接受的性能, Z".

您可以做的另一件事是建立基准测试或某种性能日志记录,然后将性能数据发回给您。许多应用程序都这样做。您知道“我们可以将匿名使用数据发送回母舰吗?”安装某些软件时遇到的问题?好吧,这些数据中常见的是特定于系统的详细信息,例如 RAM、CPU、硬盘驱动器型号和其他硬件详细信息(您确定与您的应用程序相关的任何数据),以及性能日志记录数据。通过采用这种方法,您可以获得来自许多不同系统配置的大量性能数据,而无需在内部拥有大量不同配置的机器。

您可以对程序崩溃和错误执行相同的操作 - 将堆栈跟踪、系统信息和其他相关数据转储到发送回给您的日志文件中 - 当然,只有当您的用户已经说过可以将该数据发回给您。

关于eclipse - 如何确定我的 Java 应用程序的最低 JRE 版本和系统要求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8368237/

相关文章:

java - 设置边距时,相对布局中的按钮会被压扁

validation - 帐户用户名的最佳做法?

tfs - 用什么工具接收客户需求

eclipse - 如何在 Eclipse 中使用 Tomcat 8.5.x 和 TomEE 7.x?

javascript - 有没有办法从后面调用 .jsp 中的函数?

java - java中通过方法初始化2dim数组

java - Spring DATA JPA 以 Hibernate 作为 JPA 提供者

java - 需要一个实例化类的方法被调用

eclipse - 在 eclipse 中运行 nutch1.9 时出现错误 CrawlDb update : java. io.IOException: Job failed

java - 弃用覆盖方法