当前位置: 首页 > 面试题库 >

如何使用Java 8 --parameter标志编译Spring Boot应用程序

束雅达
2023-03-14
问题内容

Spring文档告诉 我们如果使用Java 8
–parameters标志编译项目

,则可以跳过在@PathVariable之类的批注中提供参数名称的操作。也就是说,我们可以使用@PathVariable id代替@PathVariable("id") id

在Spring Boot Maven应用程序中,我很好奇知道如何告诉编译器使用 parameters 标志。默认情况下启用吗?我们是否需要在
pom.xml中 提供某些内容?


问题答案:

在Spring Boot2.0中,--parameters默认情况下应启用该标志。

对于旧版本,可以在pom.xml文件中将Java编译器选项指定为Maven编译器插件的参数:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <compilerArgs>
            <arg>-parameters</arg>
        </compilerArgs>
    </configuration>
</plugin>


 类似资料:
  • 我有一个用Java 8编译的可执行jar文件,其中包含一个名为< code>app.jar的JavaFX应用程序。 当我安装了Java8时,我可以简单地用运行它。 现在我只安装了Java 11,运行上面的命令会产生以下错误: 因为Java 11不再包含JavaFX。 所以我考虑安装JavaFX。openjfx.org以两种形式提供JavaFx:SDK和JMOD文件。 我认为我不需要SDK,因为我不

  • 我想在另一个Flux流中间调用Mono,向mono发送Flux参数。我正在使用SpringBoot的WebClient。 我试过这个: 但是,如何将第一个API调用的返回发送给param2?然后得到双方的回应?第一个API返回许多值,对于每个值,我需要调用第二个API。 谢谢

  • 我有Java8SDK和运行时,以及一个只使用Java7个功能的项目。我想知道我是否可以设置intellij来构建一个Java-7级的jar,从命令行肯定可以做到这一点? 到目前为止,我已经尝试过简单地将项目语言级别设置为7作为实验,但这显然是不够的,也不是我真正需要的。 我在SO上也看到过这个问题:"Intellij IDEA使用java7编译器编译,当我已经将其配置为使用Java6",但我的项目

  • 编译标志 编译标志让你可以修改正则表达式的一些运行方式。在 re 模块中标志可以使用两个名字,一个是全名如 IGNORECASE,一个是缩写,一字母形式如 I。(如果你熟悉 Perl 的模式修改,一字母形式使用同样的字母;例如 re.VERBOSE的缩写形式是 re.X。)多个标志可以通过按位 OR-ing 它们来指定。如 re.I | re.M 被设置成 I 和 M 标志: 这有个可用标志表,对

  • 我有Kafka Streams java应用程序启动并运行。我试图使用KSQL创建简单的查询,并使用Kafka流来实现复杂的解决方案。我希望将KSQL和Kafka流作为Java应用程序运行。 我打算通过https://github.com/confluentinc/ksql/blob/master/ksqldb-examples/src/main/java/io/confluent/ksql/em

  • 所以我有一个使用unity的android游戏,我在dll中寻找脚本,并确切地知道我应该在C#代码中更改什么,我的意思是我几乎完全反向工程了这个应用程序。下一步该怎么办?顺从它?但怎么做?

  • 问题内容: 我无法使javac识别我要扩展其类的外部.jar文件。我在同一目录中有两个文件:TestConsole.java和acm.jar。我正在使用以下命令从同一目录进行编译: 但是似乎javac只是忽略了acm.jar。它给了我错误: 当然,acm.program是acm.jar中的一个包。acm.jar中的所有类均已编译;我只想在我的课程中使用它们,而不是编译它们。 我究竟做错了什么? 我