当前位置: 首页 > 知识库问答 >
问题:

Java、Mac OS、Windows和Linux

唐啸
2023-03-14

我已经从Linux(Ubuntu)迁移到Mac OS。我用Java(swing)编写了一个应用程序。我已经成功地运行了同样的代码在windows和linux但在mac os我有一些问题。

下面是注释中的代码和问题:

public MainForm() {
    setResizable(false);
    setAutoRequestFocus(false); // This method is undefined for type MainForm
    initComponents();
}

另一个:

Object[] industries = jList1.getSelectedValuesList().toArray(); //  This method is undefined...
setType(Type.UTILITY); // Type can't be resolved as variable

我当然编不出来。

Java版本:Ubuntu:

java版本“1.7.0_07”java(TM)SE运行时环境(build 1.7.0_07-B10)java HotSpot(TM)Server VM(build 23.3-B01,混合模式)

我不能更新java(因为它似乎是mac的最新版本)。我现在想在mac上开发这个应用程序。

共有1个答案

江佐
2023-03-14

在对给您带来问题的方法进行了一些挖掘之后,很明显您并不是在每个平台上运行相同的JDK。具体地说,您的Windows和Linux盒子运行的是JDK1.7,而您的Mac OS X盒子运行的是JDK1.6或更高版本。关于在Mac上使用JDK1.7,请参阅此问题。

事实仍然是,您不需要在每个平台上编译您的应用程序。Java是一种“一次编译,到处运行”语言。编译器产生的字节码对每个平台都起作用,不管是哪个平台编译的,只要您自己没有在代码中引入任何系统依赖项。

换句话说,只要您的代码是平台不可知的,Java本身就是平台不可知的。您的问题只是一个JDK版本错误,因此将Mac版本的JDK升级到1.7就可以解决这个问题。

请注意,您不能在Java6或更低版本中运行用1.7源目标编译的二进制文件。您可以在编译时将源目标更改为1.6,但这将妨碍您使用Java7 API(如getSelectedValuesList方法)。

 类似资料:
  • 所有三个操作系统都提供了应用程序向用户发送通知的手段。 Electron允许开发者使用 HTML5 Notification API 发送通知,并使用当前运行的操作系统的本地通知 API 来显示它。 注意: 由于这是一个 HTML5 API,它只能在渲染器进程中使用。 如果你想在主进程中显示通知,请查看 Notification 模块. let myNotification = new Notif

  • 概览 进度条使窗口能够向用户提供其进度信息,而无需被切换到前台。 在Windows环境下,进度条被显示在任务栏按钮上。 在MacOS环境下,进度条将被显示在dock栏图标上 在Linux系统中,Unity桌面也有相似的特性,能在Launcher上显示进度条。 注意:在 Windows 上,每个窗口都可以有自己的进度条,而在 macOS 和 Linux(unity桌面)上,同一个应用程序只能有一个进

  • Windows 和 macOS 分别通过打开跳转列表(JumpList)和dock菜单使应用程序能够快速的访问最近打开的文档列表。 跳转列表 应用 dock 菜单 若要增加一个文件到最近文件列表,你可以使用app.addRecentDocument API: const { app } = require('electron') app.addRecentDocument('/Users/USER

  • 概览 Windows 和 macOS 分别通过打开跳转列表和dock菜单使应用程序能够快速的访问最近打开的文档列表。 JumpList: 应用 dock 菜单 示例 管理最近的文档 index.html main.js <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Recent Documents</titl

  • 今天我注意到一些有意义的事情,但是我不能准确地解释语义。 基本上,我创建了一个简单的旧java方法,其中有一个永无止境的while循环。在这个循环中,我创建了一些字符串并将它们放在HashMap中。我真正想要的是一个在一段时间内运行并建立其内存利用率的进程。 } 该过程从< code>-Xms512m -Xmx512m开始。 一旦开始,我可以使用来查看我的java进程。我试图理解的位是虚拟内存和物

  • Java 安装(MacOS) 去 钉盘 - 网聚宝开发指南-资源 - MacOS 选择 JDK下载,选择 MacOS 版本,进行下载。 进行安装,点击下一步,直到进行安装。 打开(重启)终端,输入 java -version 进行验证是否安装成功。 Java 安装(PC) 去 钉盘 - 网聚宝开发指南-资源 - PC 选择 JDK下载,选择 MacOS 版本,进行下载。 进行安装,点击下一步,直到