草庐IT

编译ffmpeg

全部标签

java - 使用 jOOQ 3.6+、纯 SQL 和 javac 编译器进行缓慢编译

这个问题在这里已经有了答案:Troubleshootslowcompilation(3个答案)关闭7年前。以下错误已报告给jOOQusergroup.这似乎确实是javac编译器中的一个错误,与编译器在使用内部DSL(如jOOQ)的上下文中完成的相当“复杂”的类型推断工作有关。是。鉴于该错误的一般性质,我将其记录在StackOverflow上,以供其他人在遇到它时帮助应用解决方法。在高层次上,这似乎是由于JEP101:GeneralizedTarget-TypeInference而导致的编译器性能回归。,它是在Java8中引入的,过去曾引起1-2个问题。使用Maven和jOOQ3.7在

java - 从 Java 7 迁移到 Java 8 - 编译错误

以下代码在JDK7中使用javac编译两个测试方法,但JDK8只会编译willCompile方法。willNotcompile的错误是:“类型method中的方法Class(Klasa)不适用于参数(Class)。”@TestpublicvoidwillCompile()throwsInstantiationException,IllegalAccessException{Classklass=getObject(Class.class);method(klass);}@TestpublicvoidwillNotCompile()throwsInstantiationException

Java类编译时错误 "Cannot access interface"

我有一个接口(interface)stores,它有两个方法getName()和getAddres(),我有一个实现Stores的类Market这是我的代码:publicinterfaceStores{publicStringgetName();publicStringgetAddress();}具体类:publicclassMarketimplementsStores{privateStringname;privateStringaddress;privateintsize;publicMarket(Stringname,Stringaddress,intsize){this.nam

java - 测试在 JUnit 4 而不是 JUnit 5 下运行——编译干净,但执行 0 个测试

任何人都可以在几分钟内轻松重现此问题。基本Mavenquickstart项目借助IntelliJ2018.3和Maven3.6.0,我使用Maven原型(prototype)创建了一个全新的项目maven-archetype-quickstart1.4版。Java11在新项目的POM文件中,我将maven.compiler.source和maven.compiler.target的属性从1.7更改为11,适用于Java11.0.2我目前正在使用,Zulu来自AzulSystems.UTF-81111在IntelliJ的Maven面板上,我运行了clean和install生命周期事件。在

java - Eclipse Java 编译器警告作为 ant 任务

我希望eclipseJava编译器警告作为ant任务(即没有eclipse)可用——理想情况下作为ant插件——但我希望cruisecontrolant任务在出现eclipse警告时失败。对于以下警告静态成员的非静态访问带有构造函数名称的方法没有serialVersionUID的可序列化类赋值无效最后没有正常完成在字符串连接中使用字符数组隐藏的捕获blockvararg参数的类型匹配不准确空指针访问类型参数隐藏了另一种类型方法不覆盖包可见方法接口(interface)方法与protected“对象”方法冲突永远不会读取局部变量未使用的本地或私有(private)成员未经检查的泛型类型操

运行时的 Java 编译器

在我当前的项目中,我需要在运行时编译java代码(在后台处理来自用户的输入)。这适用于类路径中的tools.jar。然而,并不是我程序的所有用户都在他们的系统上安装了JDK。其中一些只有JRE,在这种情况下,运行时没有可用的Java编译器。我可以通过将来自Sun的tools.jar作为我的工具的一部分来解决这个问题。但是tools.jar非常大(>12MB)。问题是我必须包含大jar文件,尽管我只对这个jar提供的一小部分功能感兴趣。是否有可能分解tools.jar文件,这样我就有了类的小子集编译java代码需要只要?这是违法的吗?非常感谢。 最佳答案

Java 编译器 API 类加载器

我正在尝试使用JavaCompilerAPI来编译一些java类。该类从jar文件中导入一些包,这些包可以由上下文类加载器加载,我们称他为X,它不是系统类加载器。当我运行编译时,编译器提示无法识别导入。我试图指定fileManager来传递类加载器,但它没有帮助。当编译方法被调用时,它首先打印“CLASSLOADED”,因此上下文ClassLoader可以找到依赖类。但是,编译本身失败了(我收到“编译失败”消息)并且在编译过程中出现如下错误:/path/to/my/Source.java:3:包my.dependency不存在导入my.dependency.MyClass;^我做错了什

java - 使用用户定义的注释生成编译器警告

是否可以让编译器在遇到用户定义的注释时生成警告?类似于@Deprecated注释的东西?谢谢 最佳答案 根据您最初的问题和评论,我假设您正在尝试执行以下操作:将代码标记为不完整(带有编译器警告),以便其他开发人员不要使用它。稍后在您的IDE中识别不完整的代码。我不相信您可以用编译器警告标记代码。@Deprecated标记被嵌入到编译器中。指示方法不完整的更常见方法是抛出异常:thrownewUnsupportedOperationException("Notimplementedyet");效果要到运行时才能实现,但其他开发人员应该

java - 如何使用 eclipse 编译器进行独立的即时内存编译?

与JDK中包含的编译器及其API相比,eclipse编译器及其API具有一些显着优势(对我的应用程序特别有益),因此我想使用它。我有一个独立的实用程序,我想尽量减少它的大小和依赖性。访问eclipse编译器(最少jar文件集及其下载位置)并在内存中即时编译生成的代码的方法是什么? 最佳答案 通过startingfromthispage下载ECJ,单击最新版本,然后找到并下载文件ecj-[版本].jar。为此,我使用4.2.1。在您的类路径中引用此jar。您使用org.eclipse.jdt.internal.compiler.Com

java - Ant 使用了错误的 Java 编译器,但认为它是正确的

需要说明的是,这不是这个问题:Antisusingwrongjavaversion我正在尝试在MacOS10.8.2机器上使用Ant编译Java1.7项目。我已经安装了Java1.7,并且Eclipse一直在流畅地构建它。但是,当像这样使用带有Ant命令行执行的ant构建脚本时ant-v输出充其量是神秘的:第一行显示Ant正在按要求使用Java1.7,从$JAVA_HOME的位置,正如我自己设置的那样。ApacheAnt(TM)version1.8.2compiledonDecember202010Tryingthedefaultbuildfile:build.xmlBuildfile