ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

lion – 安装32位Java 7 OpenJDK

2019-08-18 13:59:52  阅读:362  来源: 互联网

标签:32-bit java lion


动机

我有一个专有的java应用程序,曾经在Snow Leopard下工作但在Lion下失败,有以下backtrace:

Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: Invalid display mode
    at apple.awt.CGraphicsDevice.setDisplayMode(CGraphicsDevice.java:472)
    at apple.awt.CGraphicsDevice.setFullScreenWindowSynchronized(CGraphicsDevice.java:363)
    at apple.awt.CGraphicsDevice.access$000(CGraphicsDevice.java:25)
    at apple.awt.CGraphicsDevice$1SetFullScreenAction.run(CGraphicsDevice.java:326)
    at apple.awt.CGraphicsDevice.setFullScreenWindow(CGraphicsDevice.java:331)

setFullScreenWindow的调用仅传递null,即它尝试从全屏恢复到窗口模式.仅在连接投影仪时才会出现错误,因此屏幕分辨率调整为1024×768.看起来像Java VM中的一个错误.

看看the code,在我看来,OpenJDK 7可能已经解决了这个问题.所以我想尝试一下.

方法失败

但是,即使在下载Java SE 7u7 from Oracle之后,我也无法使用它来执行应用程序,因为该应用程序使用了一些32位本机代码,而这个JVM不支持:

> /Library/Java/JavaVirtualMachines/jdk1.7.0_07.j/Contents/Home/bin/java -d32 -version
Error: This Java instance does not support a 32-bit JVM.
Please install the desired version.

核心问题

所以我的核心问题是:是否可以在Mac OS X Lion上安装最新版本的OpenJDK 7的32位版本?最好是作为预编译的包,但如果没有,那么如何编写自己的编写良好的指令也可以满足我的目的.

解决方法:

我似乎找到了预编译OpenJDK的源代码:
http://code.google.com/p/openjdk-osx-build/
OpenJDK 7构建有通用性,确实在32位模式下运行.
最新版本是7u6,这与Oracle提供的7u7不同,但应该是最近的,以满足我的要求.

唉,我原来的问题仍然存在,所以我可能不得不自己编译我的JVM.我发现在OpenJDK mercurial repositories中有一个jdk7u-osx repository,它的README-builds file提供了关于如何构建东西的合理指示.关于源滴的部分显得特别重要.我仍然有一些麻烦,但这些似乎是构建过程中的错误或类似的,所以我会用macosx-port-dev mailing list把它们拿走.

标签:32-bit,java,lion
来源: https://codeday.me/bug/20190818/1689184.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有