javac相关内容

javac 生成的名称中的 $$ 是什么意思?

在转换由 DependencyFinder 和 java-callgraph 等库生成的 java 调用图时,我发现 java 编译器会为匿名函数、内部类等生成名称. 我已经找到了其中几个的意思(如果我错了,请纠正): org.example.Bar$Foo指的是Foo,它是org.example.Bar的内部类. org.example.Bar$1 指的是在 org.example ..
发布时间:2021-11-22 16:36:22 Java开发

为什么 Java 编译器有时会允许对 null 进行拆箱?

例如: int anInt = null; 在编译时失败,但是 public static void main(String[] args) {for (int i = 0; i 在运行时失败(通常).尝试只返回 null 也会导致编译错误,所以我假设有多个路径会导致编译器推断 null 可能是一个自动装箱 整数?javac为什么不能编译两种情况都出现同样的错误? 解决方案 在第 ..
发布时间:2021-11-22 16:35:41 Java开发

如何让 Intellij Idea 显示编译警告?

我正在使用 Intellij Idea 10 和 Java 6 JDK Update 7.当我运行 Build -->Rebuild Project 命令,并且 (javac) 编译生成警告,Idea 不会在 Messages 视图中显示什么这些警告.我只看到一个“信息:XX 警告"节点,但无法展开它以查看实际警告.或者我只是在状态栏上看到一条消息“编译成功完成,但出现 XX 警告".对于错误,I ..
发布时间:2021-11-22 16:35:32 Java Web开发

在用户的 gradle.properties 中设置 JDK home(javac 路径)

我需要在我的 gradle 项目中指定 javac 的路径.我可以通过将以下内容添加到我的 build.gradle 文件中来做到这一点: options.forkOptions.executable = '/home/mj/lib/jdk1.7.0_80/bin/javac' 问题是这个文件在我们的存储库中共享,我不希望设置被推送到那里.我试着把它放在我本地的 gradle.properti ..
发布时间:2021-11-22 16:35:21 Java Web开发

如何将 Java 编译器错误捕获到文件中?

我编译了一个Java程序 javac t1.java >一种 为了将错误消息重定向到文件 a.但是 a 没有错误内容(它们仍然出现在终端中).该命令是从 Linux 命令提示符执行的. t1.java 的内容如下: class t1 {公共静态无效主(字符串 [] args){System.out.printn("Hello World!");//显示字符串.}} 所以现在有一个错误 ..
发布时间:2021-11-22 16:34:58 Java开发

Java 8 不兼容的类型

这是简单的代码 import java.util.ArrayList;导入 java.util.Collections;导入 java.util.HashMap;导入 java.util.Map;公共类 SimpleTest {公共静态无效主(字符串 [] args){最终 ArrayList>地图 = newArrayList(createMap("1", "a", Collections.E ..
发布时间:2021-11-22 16:34:51 Java开发

Java:特定枚举和通用 Enum参数

我想将任何枚举值传递给实用程序类中的方法,并获得另一个相同枚举类型的枚举值.像这样: 公共类 XMLUtils {公共静态枚举getEnumAttribute(元素元素,字符串名称,枚举 ?默认值) {if (element.hasAttribute(name)) {String valueName = element.getAttribute(name);//搜索值for (Enum valu ..
发布时间:2021-11-22 16:34:32 Java开发

创建批处理文件,用于简单的 javac 和 java 命令执行

这是一件非常简单的事情,但我无法理解.我查看了大量 StackOverFlow 帖子以及互联网上的内容. 我的目标是创建一个 .bat 文件,它将打开 cmd 并将我的 Main.java 执行到命令提示符中.是不是很容易,但我对如何做感到困惑? 下面我正在编写我的批处理文件应该执行的步骤 打开cmd javac Main.java java 主程序 我的文件将位于我所 ..
发布时间:2021-11-22 16:34:11 Java开发

是否有 Java 库可以从 AST 生成类文件?

本页 描述了我如何使用 javac 中的代码生成器来生成给定的代码我可以构建一个 AST(使用我编写的单独的解析器).该技术涉及编辑 javac 的源代码以基本上绕过 Java 解析器,以便可以将他/她自己的 AST 提供给代码生成器.这可以工作,但我希望以更简洁的方式来完成.我想将 javac 的代码生成部分作为库包含在我的项目中,这样我就可以使用它来生成代码,而无需附带 javac 的其余源代 ..
发布时间:2021-11-22 16:34:03 Java开发

“包 javax.inject 不存在"在命令行中使用 javac 编译时出错

我正在迈出学习 JSF 的第一步.我发现了一本有趣的书,叫做“Core JavaServer Faces 第三版". 尝试编译第一个示例,您可以从以下位置下载源代码:http://horstmann.com/corejsf/.当我在命令行中输入以下内容时 javac UserBean.java 我收到错误: 包 javax.inject 不存在包 javax.enterprise.co ..
发布时间:2021-11-22 16:33:51 Java开发

如何编译为目标 Java 1.0

我想将我的代码编译到 Java 1.0 版. 我设法编译成1.1: $ java -versionopenjdk 版本“1.8.0_181"OpenJDK 运行时环境(构建 1.8.0_181-8u181-b13-2~deb9u1-b13)OpenJDK 64 位服务器 VM(构建 25.181-b13,混合模式)$ javac -target 1.2 -source 1.2 MyClas ..
发布时间:2021-11-22 16:33:44 Java开发

java编译器的目标版本“jsr14"使用 JDK7/8

谁能告诉我 javac 的 jsr14 目标选项在 JDK7/8 中仍然可用吗? 说, $ javac -source 1.5 -target jsr14 Hello.java 解决方案 我们在 OSGi 中大量使用 -jsr14,因为它允许我们在我们的 API 中使用泛型,但仍然部署在 1.4 环境中,这些环境在嵌入式中仍然很流行.不幸的是,他们使 JDK 7 不向后兼容 Java ..
发布时间:2021-11-22 16:33:33 Java开发

构建 Java 包(javac 到所有文件)

如何将目录下的所有文件编译为*.class文件? 解决方案 嗯,这看起来很明显,所以我可能会遗漏一些东西 javac *.java (带有适当的库引用等) 或者: javac -d bin *.java 到 javac 为输出创建正确的目录结构. 您在寻找更复杂的东西吗?如果是这样,您能否提供更多详细信息(以及您在哪个平台上)? ..
发布时间:2021-11-22 16:33:26 Java开发

在 Java 6 中编译,在 7 中运行 - 如何指定 useLegacyMergeSort?

我想知道我是否在 Java 6 中编译,但有人在 Java 7 上运行程序,会使用 Java 6 或 7 版本的 Arrays.sort 吗? 这很重要,因为新的归并排序会抛出 IllegalArgumentException,而旧的不会(参见 比较方法违反了它的一般约定!仅限 Java 7) 现在,可以使用 Arrays.useLegacyMergeSort 在 Java 7 中进行 ..
发布时间:2021-11-22 16:33:19 Java开发