Tag: 编译

如何使用ANT仅编译已更改的源文件

我正在尝试编写用于编译源文件夹的ant build,这是我编译的脚本目标 。 在我的项目中,我有大约1000个.java文件。 当更改单个.java文件时,目标往往会编译所有.java文件。 这使得开发非常缓慢。 我只想知道有没有任何方法或代码来改变任务的行为,只编译修改或更改.java文件而不是所有.java文件。 请帮帮我。

为什么编译此代码会导致编译器堆栈溢出?

interface Pong {} class Ping implements Pong<Pong<? super Ping<Ping>>> { static void Ping() { Pong<? super Ping> Ping = new Ping(); } } 尝试编译这会给出错误: The system is out of resources. Consult the following stack trace for details. java.lang.StackOverflowError at com.sun.tools.javac.code.Types$23.visitClassType(Types.java:2579) at com.sun.tools.javac.code.Type$ClassType.accept(Type.java:554) at com.sun.tools.javac.code.Types$UnaryVisitor.visit(Types.java:3260) at com.sun.tools.javac.code.Types$23.visitClassType(Types.java:2592) at com.sun.tools.javac.code.Types$23.visitClassType(Types.java:2579) at com.sun.tools.javac.code.Type$ClassType.accept(Type.java:554) … 代码由github上的etorreborre提供。

如何在运行时将rhino / javascript文件编译为.class字节码

我正在用Java制作一个落砂游戏 。 我希望用户能够使用更简单的语言为其编写自己的引擎。 落砂游戏可能会占用大量CPU资源,因此我希望尽可能快地运行引擎,而无需手动编译。 我需要知道如何在运行时将rhino javascript文件编译为.class文件以供使用。 我找了一种方法,但除了使用我不希望用户必须执行的命令行手动编译之外,找不到任何方法。

为什么classname $ 1.class会在这种情况下生成?

我编写了以下代码来实现Singleton模式: public final class Test { static final class TestHolder { private static final Test INSTANCE = new Test(); } private Test() {} public static Test getInstance() { return TestHolder.INSTANCE; } } 当我编译这个文件时,它应该生成Test.class和Test $ TestHolder.class,但它也会生成Test $ 1.class。 这没有意义。 那么为什么以及如何呢?

ANT_HOME设置不正确或无法找到ant

我正在尝试使用BuildFile(build.xml)在Ant中构建项目。 尽管ANT_HOME环境变量明确存在并且设置为“ant.bat”所在的路径,但它始终显示此错误消息。 如何正确配置Ant以在Windows中编译构建? 谢谢

找不到Javac

我正在运行Windows 8,我无法让javac工作。 我已将环境变量中的PATH设置为 C:\Program Files (x86)\Java\jdk1.7.0_17\bin 无论有没有’;’我都试过了 但无济于事。 我最近在桌面上遇到了这个问题并添加了; 工作但不是这种情况。 我已经确保javac确实存在于bin中。 任何有关修复的建议都将不胜感激。 EDITS echo%PATH%给出: C:\Users\Arktri\Desktop>echo %PATH% C:\Program Files (x86)\Intel\iCLS Client\; C:\Program Files\Intel\iCLS Client\; C:\Windows\system32;C:\Windows; C:\Windows\System32\Wbem; C:\Windows\System32\WindowsPowerShell\v1.0\; C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86; C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64; C:\Program Files\Intel\Intel(R) Management Engine Components\DAL; C:\Program Files\Intel\Intel(R) Management Engine Components\IPT; C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL; C:\Program Files (x86)\Intel\Intel(R) Management Engine […]

我应该更改什么来使这个文件编译?

我在编程课程中,这个课程是我作业的一部分。 此文件分析名为“Names.txt”的文件中的数据,然后打印信息。 我收到编译错误,我想知道我需要更改或添加以使其成功编译。 这是我的代码: import java.util.Scanner; import java.io.File; import java.io.FileNotFoundException; public class NameApp { public static void main(String[] args) { Scanner stdin = new Scanner(System.in); String selection, nameIn, nameIn2; Name name, name2; int decade; String first = “1”, second = “2”, third = “3”, fourth = “4”, fifth = “5”, sixth = “6”, seventh = […]

口译员如何解释代码?

为简单起见,想象一下这个场景,我们有一台2位计算机,它有一对2位寄存器,称为r1和r2,只适用于立即寻址。 让我们说比特序列00意味着添加到我们的CPU。 01表示将数据移至r1,10表示将数据移至r2。 因此,这台计算机和汇编程序有一个汇编语言,其中的示例代码将被编写为 mov r1,1 mov r2,2 add r1,r2 简单地说,当我将此代码汇编为本机语言时,文件将类似于: 0101 1010 0001 上面的12位是本机代码: Put decimal 1 to R1, Put decimal 2 to R2, Add the data and store in R1. 所以这基本上是编译代码的工作原理,对吧? 让我们说有人为这个架构实现了一个JVM。 在Java中,我将编写如下代码: int x = 1 + 2; JVM将如何解释此代码? 我的意思是最终必须将相同的位模式传递给cpu,不是吗? 所有cpu都有许多可以理解和执行的指令,它们毕竟只是一些位。 让我们说编译的Java字节码看起来像这样: 1111 1100 1001 或者其他..是否意味着解释在执行时将此代码更改为0101 1010 0001? 如果是,它已经在本机代码中了,那么为什么说JIT只是经过多次启动? 如果它没有完全转换为0101 1010 0001,那么它会做什么? […]

Java:找不到符号?

当我尝试编译一个小程序时,我编写了一组卡片并打印它们,我得到6个错误,所有这些都是“找不到符号”的错误。 有人可以查看我的代码并找到错误吗? 谢谢。 编译输出: sudhakar@sudhakar-Dell-DXP061 ~/deck $ javac doDeck.java Deck.java Card.java doDeck.java:7: cannot find symbol symbol : variable deck location: class carddeck.Deck System.out.println(mydeck.deck[x].getRankString() + ” of ” + mydeck.deck[x].getSuitString()); ^ doDeck.java:7: cannot find symbol symbol : variable deck location: class carddeck.Deck System.out.println(mydeck.deck[x].getRankString() + ” of ” + mydeck.deck[x].getSuitString()); ^ Deck.java:4: cannot find symbol symbol : […]

使用Java文件中的代码编译Java文件

我目前正在创建一个个人(可能是公共的)Java终端。 我想创建一个命令,在执行时创建+编译Java文件,除了我不太确定如何实际执行此操作。 可能吗? 还是我只是在做梦?