java - Java 11 SE 控制台输出
问题描述
在 Java SE 之前,一个 java 应用程序只需运行java -jar yourprogram.jar
.
但是现在使用 Java SE,库和运行时环境都打包到一个 jar 文件中,因此您不必担心在计算机上安装最新版本的 java。
太好了,但是现在您无法使用上述命令启动 jar 文件,因为它将尝试使用最新的 JRE 1.8 运行。这将导致它失败并出现错误java.lang.UnsupportedClassVersionError
。我目前正在为我的项目使用 SE 11(更新得多)。如果我在 CMD 中使用 just 运行 java 可执行文件yourprogram.jar
,它会运行,但没有任何控制台输出。
我已经在谷歌上搜索了一个小时,但没有运气。我究竟如何创建一个将输出到 CMD(或任何控制台)的 Java SE jar?
编辑:修复了旧的命令语法
解决方案
您的全局 Java 命令很可能曾经安装过,以便为浏览器提供 Java(它还安装了全局可用的 Java 命令)。
Java 的最新版本(我主要看 OpenJDK)不这样做,所以 global Java 命令一直是旧的,给出你看到的错误。
最简单的解决方法是将bin
安装的文件夹放在 PATH 变量的前面,这样新的 CMDjava
就可以首先从那里看到和使用。
推荐阅读
- c# - 通过 WebApi 下载文件返回 JSON
- stm32 - 使用 HAL_SPI_Receive 接收错误的数据
- query-performance - 不相关的查询不应该在 not in 语句中只执行一次吗?
- jpa - JPA规范使用Entitry的minversion
- ruby-on-rails - 如何为 Rails + Rspec + Capybara & Selenium Webdrivers 为多域应用程序设置 Github CI?
- reactjs - 无法在 goormIDE 中启动 npm
- reactjs - 如何在 react-calendar-timeline 中添加自定义弹出框
- python-3.x - Python 脚本 (.py) 未通过 Python.Exe 运行
- java - GPG 签名的替代方案在 maven Central 中发布 JAR
- angular - 如何在 Angular Material Table 中将嵌套数组显示为行?