【问题标题】:import java.io.*; won't work, no how, no way? [closed]导入java.io.*;行不通,怎么办,没办法? [关闭]
【发布时间】:2021-04-07 09:46:47
【问题描述】:

通常,我将任何 html 文件拖放到(任何)浏览器(在我的 macOS Catalina 上),它会在本地完美地运行标签内的 javascript。现在,正在导入模块类(import java.io.*;)

代码在 import 语句中挂起: Uncaught SyntaxError: Unexpected token '.'

是的,我在脚本标签中添加了 type="module",在此之前我得到: 未捕获的语法错误:无法在模块外使用 import 语句

我忽略了什么令人尴尬的基本事情???

我已尝试上传以在虚拟主机服务器上进行测试,但仍然出现同样的错误(只是任何包含导入语句的脚本)我已尝试重新安装最新的 JDK 15.0.1.pkg

一个我希望工作的简单示例 html 文件:

<!DOCTYPE HTML>
<html>
<head>
<meta content="text/html;charset=utf-8" http-equiv="Content-Type">
<meta content="utf-8" http-equiv="encoding">
</head>
<body>

<script type="module">

import java.util.Scanner;

class MyClass {
  public static void main(String[] args) {
    Scanner myObj = new Scanner(System.in);
    System.out.println("Enter username");

    String userName = myObj.nextLine();
    System.out.println("Username is: " + userName);
  }
}
</script>

</body>
</html>

【问题讨论】:

  • 这是一个关于 java 不是 javascript 的笑话吗?
  • 这个问题中的代码对于它想要做什么非常困惑。 --- 它是一个独立的 Java 控制台程序吗?如果是这样,那么 main() 方法是有意义的,但 HTML 没有。 --- 它是一个独立的网页(拖放到浏览器说它是))?那么Java根本没有意义。 --- 它是 Servlet 容器的 JSP 文件吗?如果是这样,那么嵌入的 Java 代码就是 &lt;% %&gt; 标签内的值,但是 main() 方法没有意义。
  • &lt;script&gt; + Java 不会自动变成Javascript

标签: java class import module built-in


【解决方案1】:

问:你真的认为你可以将 Java 代码放在 HTML 的“

问:我希望你不认为“Java”和“Javascript”是一样的。
答:两者非常非常不同。
更多详情请看这里:https://stackoverflow.com/a/245069/421195

注意事项:

  1. 一个主要区别是 Javascript 是一种脚本语言:JS 文本是即时解释和执行的(例如通过您的网络浏览器)。

  2. 如果您希望在“Web 上下文”中执行 Java,或者如果您希望在同一个源文件中混合 Java 代码和 HTML 标记,那么一种方法是使用 JSP(Java Server Pages )。

我希望这有助于澄清一些事情 - 至少有点......

【讨论】:

  • 是的!这是我需要指出的方向。谢谢,我确实说了令人尴尬的基本新手问题
【解决方案2】:

您不能将 Java 用于 HTML 中的 &lt;script&gt; 标记。但是,您可以改为在 &lt;script&gt; 标记中使用 JavaScript

【讨论】:

    【解决方案3】:

    您不能在 HTML 中使用 Java。有一个选项可以使用 JSP 来完成,它具有与 HTML 相同的标签,并且您可以添加 Java 逻辑。这里有一个帖子Use Java code in JSP

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-08
      • 2018-05-08
      • 2018-06-20
      • 2022-01-22
      • 2021-01-29
      • 1970-01-01
      相关资源
      最近更新 更多