jvm 相关问题

Java虚拟机(JVM)使一组计算机软件程序和数据结构能够使用虚拟机模型来执行其他计算机程序和脚本。将此标记用于处理JVM提供的工具或在特定方案中如何工作的问题。

以自动化方式估计 Kubernetes Pod 资源规格

我们的开发人员正在开发 springboot java 应用程序,并将其部署到 AKS 集群。我们有 Helm 和 Azure 管道来将这些应用程序动态部署到 AKS 集群以及值...

回答 0 投票 0

如何在 groovy 中列出 JVM 中的所有(groovy)类

我正在编写一个 DelegatingMetaClass,我想将其应用于我项目中的所有 groovy 类,但我不知道如何获取项目中的所有类? 这是代码: /* 这会...

回答 1 投票 0

为什么 Kotlin main 函数需要 @JVMStatic 注解?

最近开始学习Kotlin。在 Kotlin 中声明 main 函数时,我注意到一个有趣的行为。即使在对象类中,它也使用 @JvmStatic 注释。我环顾四周,发现......

回答 2 投票 0

如果我们在 Java 中对字符串调用 subString() 或 toUpperCase() 等任何方法,会创建多少个对象?

下面两行Java代码创建了多少个对象? String s = new String("你好"); 字符串 s1 = s.toUpperCase(); 我知道 toUpperCase() 会在堆中创建一个新对象...

回答 3 投票 0

如果我们在 Java 中对字符串调用 subString() 或 toUpperCase() 等任何方法,会创建多少个 String 对象

请考虑以下 2 行 Java 代码: String s = new String("你好"); 字符串 s1 = s.toUpperCase(); 在上面的代码中,当我们调用 toUpperCase() 时将创建多少个对象...

回答 2 投票 0

如何在运行时获取 java 应用程序加载库的大小

我需要帮助来获取正在运行的 Java 应用程序中特定加载库的大小。 详细来说,我在 Linux 上通过 JVM 运行一个 Java 应用程序。当我试图获得记忆时

回答 1 投票 0

在 Kotlin 中具有多个条件和数据的自定义验证器?

我需要在 Kotlin 中实现一个自定义验证器,用于验证从存储库等检索到的多个字段。 例如,我有一些投影并根据它们的值检索

回答 0 投票 0

NMT 编译器 OOM

spring boot 服务总是 oom 杀手 NMT 信息在这里 编译器 OOM 我需要建议 在此处输入图像描述 目前,我使用“-Djava.compiler=NONE”来解决问题 问题是

回答 0 投票 0

一个32位的hashCode在Java中是如何存储在一个25位的mark word中而不丢失数据的?

我一直在研究 Java 对象的内部结构,对 hashCode 值的管理方式感到困惑。据我了解,Java 中的 hashCode 方法返回一个 32 位整数。然而,这...

回答 1 投票 0

JDK 14 在生产中启用预览

我有理由不从 jdk14 升级到 jdk16 但我想在生产中使用 jdk14 中引入的预览功能 经过一些研究,我发现新的预览功能已经......

回答 0 投票 0

在 C 中解析 Java 字节码(.class 文件)

我正在尝试用 C 实现一个 jvm,只是为了好玩。首先,我尝试解析 .class 文件。我写了一个简单的功能: FILE *fp = fopen("Add.class", "rb"); 国际...

回答 0 投票 0

为 C2 编译期间 Java 高内存使用生成编译器回放数据文件

C2 编译器线程在编译一些方法时正在分配高端内存(在本机内存跟踪的帮助下确认)。问题是随机重现的,无法用测试代码复制...

回答 1 投票 0

测试容器通过 bash (jvm) 终止进程

我在测试容器中运行的容器中测试了我的应用程序。我的测试应该检查应用程序的正常关闭,我需要用 TERM 信号终止主进程。我不能用 dockerClient.

回答 0 投票 0

Failed to find Premain-Class manifest attribute ... spock-mockable

我正在尝试在我的 spock testL 中存入最后一个类 java.net.UR。基于此处的答案:How to stub a java final static method or class in Spock?我正在尝试使用 spock-mockable。 我有

回答 1 投票 0

Jackson解析器可以用来解析JSON5吗?

我们想在 JVM 中解析 JSON5 文档,但 GitHub 上可用的 JSON5 特定库似乎都支持很低。由于解析器通常是安全漏洞的磁铁,w...

回答 2 投票 0

将 Java 函数传递给 KFunction

有什么方法可以将函数传递给带有参数 KFunction 的方法吗? 我在 kotlin 中有一个库,我想在 java 中使用它,但我无法将 Function 转换为 KFunction (?)。 功能...

回答 1 投票 0

JVM 版本管理器

是否有适用于 Java 世界的 Ruby 版本管理器? 我正在寻找可以让我轻松下载和安装新 JVM 并在它们之间切换的工具。例如: jvm 安装 是否有 Ruby Version Manager 等同于 Java 世界? 我正在寻找可以让我轻松下载和安装新 JVM 并在它们之间切换的工具。例如: jvm install <version> jvm list //will list installed JVMs on my system jvm use jdk1.6 //will switch my env to jdk 1.6 version, etc. http://www.jenv.be/ 将允许这种类型的控制。 SDKMAN! 是 Java 生态系统的类似工具。支持各种 Java 版本、Scala、Clojure、Kotlin、Groovy,以及 Maven 和 Gradle 等构建工具。 在 Mac 和 Linux 上工作,根据您愿意尝试的程度,提到对 Windows 的支持:) 如果您使用 Ubuntu,您可以通过命令指定要使用的 JVM(仅适用于从 apt-get 或 aptitude 安装的 JVM) sudo update-alternatives --config java 或者通过设置 JAVA_HOME。这是很好的教程: http://vietpad.sourceforge.net/javaonlinux.html 因为它(还)不在可能性列表中,所以还有 asdf. asdf 不仅提供 java 的版本管理,它默认有 ~400 种不同语言和工具的插件,你可以在 github 上找到更多,或者 创建你自己的. 这是一个如何设置新安装的示例(您也可以安装 completion 这样您就不必先列出版本)。添加了java插件,具体版本为adoptopenjdk, corretto, dragonwell, graalvm, liberica, mandrel, microsoft, openjdk, oracle, sapmachine, semeru, temurin, trava, zulu)安装配置为全局(或本地版本)使用: asdf plugin-add java # Add java Plugin asdf list-all java # List all available java versions asdf install java openjdk-18 # Install specific jdk version asdf install java openjdk-17 # Install another jdk version asdf global java openjdk-18 # Set the global jdk version asdf local java openjdk-17 # Set the local version for calls from the current directory asdf 使用$HOME/.tool-versions 中的一个文件来配置全局选择的版本。如果您在具有不同版本的.tool-versions文件的目录中调用任何工具,则会使用该文件(用asdf local …定义)。 为了完整起见,还有两个-jabba(我是作者;用Go编写,在nvm/gvm/rvm之后设计) 和 jenv(不要与 jenv.be 混淆;不支持从 oracle 安装,但可以从自定义 zip 安装)。 使用 JVM,如果你需要在它们之间切换,你只需要使用批处理文件(或 powershell 脚本)来管理类路径和 JVM 路径。您不需要依赖系统默认的 JVM 路径,只需通过更改运行 JVM 的 shell 中的类路径和 JVM 路径环境,让您的应用程序指向您喜欢的任何 JVM。 对于从注册表获取 Java 位置的程序,理论上您也可以使用批处理脚本来更新它。 在这方面,Java 比“Ruby 版本管理器”容易得多。 诀窍是使用 update-java-alternatives(来自 java-common 包)。 update-alternatives 命令不会更新各种 java /bin 可执行文件的每个符号链接,这就是 update-java-alternatives 更好的原因。 所以要选择 OpenJDK 6 到 7,请使用 update-java-alternatives -l 获取 Java 替代品列表,然后使用 sudo update-java-alternatives -s java-1.7.0-openjdk-amd64 切换 JDK。 注意:上面的命令可能会抛出以下错误, update-alternatives: error: no alternatives for mozilla-javaplugin.so. update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/IcedTeaPlugin.so 这是因为默认没有安装openjdk插件。要修复运行 sudo apt-get install icedtea-7-plugin 并重新运行 update-java-alternatives.

回答 7 投票 0

我们能否通过将对象放入弱引用并取消引用来使对象弱可达

我一直在阅读这篇关于弱引用的文章。简而言之,WeakReference 可以在任何时间点随机销毁,而 SoftReference 可以坚持一段时间,除非它是 w...

回答 1 投票 0

IBM java/IBM JVM 1.4.2 证书过期,我可以不用服务器更新吗?

我想我遇到了 IBM java 1.4.2 证书过期的问题。 调用IBM java 1.4.2的app,然后连接服务器,报错: javax.net.ssl.SSLHandshakeException:收到致命的啤酒......

回答 0 投票 0

Java Print API 在纸上呈现倾斜图形

2 条件在发生时得到遵守 页面方向设置为横向 填充任何区域的 Color 中的 Alpha 值小于 255 重现它的代码片段: 导入 java.awt.*; 导入 java.awt.

回答 0 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.