问题标签 [jvm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2020 浏览

ruby - JRuby/机架部署

我知道这很奇特,但我想使用 JRuby 部署一个 Ruby Web 应用程序(不是 Rails,而是基于 Rack,所以它可以很好地插入大多数 Ruby 服务器)。谷歌和朋友们给了我一些成功的故事,但大多与 Rails 相关,如果不是,则没有提供有关部署的详细信息。如果重要的话,我正在使用的框架是 Ramaze。

任何帮助将不胜感激。

0 投票
7 回答
4087 浏览

java - 虚拟机优化

我正在使用Java 中的玩具解释器,我正在考虑尝试编写一个可以为 Java 虚拟机生成字节码的简单编译器。这让我想到,针对 JVM 和 CLI 等虚拟机的编译器需要做多少优化?

即时 (JIT) 编译器是否进行常量折叠、窥孔优化等?

0 投票
3 回答
379 浏览

java - 使用 IDEA 8M1 运行 Swing 应用程序时出现问题

是否还有其他人无法从 IntelliJ IDEA 8 Milestone 1 运行 Swing 应用程序?即使是显示空 JFrame 的最简单应用程序似乎也会使 JVM 崩溃。我没有得到堆栈跟踪或任何东西,看起来 JVM 本身崩溃了,Windows 向我显示了一个弹出窗口,上面显示通常的“此进程不再响应”消息。

控制台应用程序运行良好,从 Netbeans 或命令行启动时,我的 Swing 代码运行良好。我正在运行带有 JDK 1.6 Update 10 beta 的 Windows Vista x64,这可能是 Jetbrains 人员尚未遇到的配置。

0 投票
30 回答
1733591 浏览

java - 如何处理“java.lang.OutOfMemoryError: Java heap space”错误?

我正在Java 5上编写客户端Swing应用程序(图形字体设计器)。最近,我遇到了错误,因为我对内存使用不保守。用户可以打开无限数量的文件,程序将打开的对象保存在内存中。经过快速研究,我发现5.0 Java 虚拟机中的人体工程学和其他人在 Windows 机器上说 JVM 默认最大堆大小为.java.lang.OutOfMemoryError: Java heap space64MB

鉴于这种情况,我应该如何处理这种约束?

我可以使用java 的命令行选项来增加最大堆大小,但这需要找出可用的 RAM 并编写一些启动程序或脚本。此外,增加到某个有限的最大值并不能最终解决这个问题。

我可以重写我的一些代码以频繁地将对象持久保存到文件系统(使用数据库是同一件事)以释放内存。它可以工作,但它可能也有很多工作。

如果您能指出上述想法的细节或一些替代方案,如自动虚拟内存、动态扩展堆大小,那就太好了。

0 投票
2 回答
7384 浏览

java - 在 Java 虚拟机中处理信号

是否可以在 Java 虚拟机中处理 POSIX 信号?

至少SIGINTSIGKILL应该是完全独立于平台的。

0 投票
9 回答
90798 浏览

java - 如何锁定已编译的 Java 类以防止反编译?

如何锁定已编译的 Java 类以防止反编译?

我知道这在互联网上一定是讨论得很好的话题,但是在参考他们之后我无法得出任何结论。

很多人确实建议使用混淆器,但他们只是用难以记住的字符序列重命名类、方法和字段,但是敏感的常量值呢?

例如,您开发了基于密码的加密技术的加密和解密组件。现在在这种情况下,任何普通的 Java 人都可以使用JAD反编译类文件并轻松检索密码值(定义为常量)以及salt,进而可以通过编写小型独立程序来解密数据!

还是应该在本机代码(例如 VC++)中构建此类敏感组件并通过JNI调用它们?

0 投票
2 回答
6886 浏览

java - 是什么导致了 JVMTI_ERROR_NULL_POINTER?

我的应用程序启动时出现错误。它似乎是在它初始化与数据库的连接之后。也可能是它开始产生线程的时候,但我无法故意让它发生。

整个错误消息是:
FATAL ERROR in native method: JDWP NewGlobalRef, jvmtiError=JVMTI_ERROR_NULL_POINTER(100) JDWP exit error JVMTI_ERROR_NULL_POINTER(100): NewGlobalRef

埃里克森:我对数据库代码不是很熟悉,但希望这个字符串会有所帮助:jdbc:sqlserver://localhost;databasename=FOO

Tom Hawtin:很可能我只是在调试时才得到这个错误,但它并没有足够的一致性让我注意到。

此外,我修复了一个错误,该错误导致多个线程尝试更新数据库中的同一行,但此后我没有收到 JVMTI... 错误。

0 投票
8 回答
15763 浏览

windows-mobile - Windows Mobile 上的 JVM 选择

Windows Mobile 上可用的 JVM 实现有哪些?

Esmertec JBed是我 WinMo 手机上的一个。

想知道这个区域中有多少其他 JVM 供应商。是否有可用的比较或基准数据?

0 投票
8 回答
3509 浏览

c# - Java 的 JVM 和 .NET 的 CLR 的内部工作方式有什么区别?

Java 的 JVM 和 .NET 的 CLR 的内部工作方式有什么区别?

也许一个起点是,它们在各自的环境中是否基本相同(Java > JVM > 机器代码)(C# > CLR > IL)。


更新: 有几个人提到了我试图涵盖的要点:

  1. 垃圾收集
  2. 装箱/拆箱
  3. 即时调试
  4. 泛型/模板
  5. 请随意提出其他区分这两者的好主题。

@George Mauer - 这听起来很有趣:

已经发布过一次,但这里是对 c# 首席语言设计师 Anders Hejlsberg的一系列采访。

0 投票
27 回答
71921 浏览

java - 如何使 JVM 崩溃?

我正在读一本关于编程技巧的书,其中作者问受访者,“你是如何使 JVM 崩溃的?” 我认为您可以通过编写一个最终会耗尽所有内存的无限 for 循环来做到这一点。

有人有什么想法吗?