今天我通过.sh
从Oracle 官方源代码并使用命令运行它sudo sh filename.sh
。
但是,我的 Linux Mint 机器中有几个版本的 Java,我使用以下命令访问它们sudo update-alternatives --config java
:
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-7-oracle/jre/bin/java 1074 auto mode
1 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1071 manual mode
* 2 /usr/lib/jvm/java-7-oracle/jre/bin/java 1074 manual mode
Press enter to keep the current choice[*], or type selection number:
当我使用该java -version
命令时,我得到的结果如下:
$ java -version
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)
通过阅读所有这些输出,我从未发现任何提及“Java EE”版本的内容。因此,我有一些问题需要澄清:
- 我怎么才能真正知道我是否将其用作默认设置?
- 如果我没有默认使用它,我该怎么办?
- 如果上述步骤不可行,我该如何设置我的 Eclipse IDE 来使用它?
提前谢谢你,佩德罗。
答案1
Java EE 实际上是一堆.jar
在 Java SE 之上运行的企业库(以文件形式),通常在服务器中运行。因此,java -version
它本身就只是说“SE”。它还说“服务器 VM”,它针对运行服务器进行了调整;但它是 64 位 Linux 上所有操作系统的默认 VM。(您可以在启动时配置或覆盖 VM 选项。VM 不知道它正在运行哪种类型的应用程序,因此它不会为您选择。)
您链接的 Java EE 会安装 Glassfish 服务器;该特定包有自己的 JDK — — 事实上是较旧的版本。因此,无论您将它放在哪里,如果您转到目录glassfish3/jdk7
并运行bin/java -version
,它都会报告java version "1.7.0_10"
,而不是_45
。请注意,“核心”运行时位于jdk7/jre/lib/rt.jar
EE JAR 位于 中glassfish3/glassfish/modules
。主要 JAR 的名称以“javax”开头,因此您可以使用find . -name 'javax*.jar'
当您在 Glassfish 中运行应用程序时,它应该执行类路径魔法以使这些 JAR 可用。如果您使用 IDE,它应该执行类似操作以便您可以编译代码。如果您手动编程,则必须自己执行此操作。
因此,回答您的问题,不使用 SE 就不能“使用”EE。使用 EE 的唯一真正要求是将其 JAR 放在类路径上。Eclipse 应该有一种方法可以“指向 Glassfish”并让它找到所有内容。
在这种特殊情况下,您还应该删除旧的_10
JDK。然后将现有的 JDK_45
放在 中glassfish3/jdk7
;或者对 PATH、JAVA_HOME 等进行必要的更改glassfish3/glassfish/config/asenv.conf
以使其运行。您不想意外运行旧的 JDK。
答案2
您需要了解的只是 HotSpot,因为这是 Oracle 的 JVM。因此从现在开始,所有使用命令的程序都java
将$PATH
使用 Oracle 的 Java。您还应该javac
使用进行调整update alternatives
。
- 有些程序有其他方法来查找 Java,所以要发挥创造力。
- 取决于应用
- 抱歉,我不使用 Eclipse
答案3
Linux 与 Windows 操作系统略有不同。我将介绍如何在 Ubuntu 18.0.4 上设置环境。您需要 4 个工具才能开始使用 Java 开发 JSP 或动态网页。
1. JavaSDK
2. Glassfish
3. Apache Tomcat 服务器
4. Eclipse IDE
1.安装Oracle Java
关于在 Linux 平台上应该使用 openjdk 还是 oracle-jdk,有很多讨论。我不想讨论它们之间的区别,但出于未知原因,我会建议你使用 oracle-jdk:)
安装步骤添加存储库
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
使用以下方式安装 Java
sudo apt-get install oracle-java8-installer
2.安装Glassfish
Java-SE 和 Java-EE 之间的主要区别在于库,其中有一些附加库,其中一个是 glassfish。安装此库后,您可以轻松地导入包下的类javax.
Glassfish 安装:
sudo apt-get install glassfish-javaee
3.Tomcat 服务器
访问https://tomcat.apache.org/download-70.cgi并下载最新的稳定 tomcat 服务器。有关分步配置,请访问此链接
https://www.javatpoint.com/how-to-configure-tomcat-server-in-eclipse-ide
4.Eclispe
访问 eclispe 官方网站并下载 eclipse for Java-EE
https://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/oxygen3a
这里有一个精心制作的教程,教你如何使用 Eclispe 启动动态 Web 项目。
https://www.javatpoint.com/creating-jsp-in-eclipse-ide