Files

2.6 KiB

  • --allow-incomplete-classpath允许使用不完整的类路径构建映像,并在首次访问它们时(而不是在构建映像时)在运行时报告类型解析错误。

  • --report-unsupported-elements-at-runtime 报告不支持的方法和字段在第一次访问时在运行时的使用情况,而不是在映像构建期间显示为错误。

  • --no-fallback 强制仅本机映像运行时,并在常规JVM上禁用回退。

  • --no-server 表示不要使用有时可能不可靠的映像构建服务器,有关更多详细信息,请参见 graal#1952。

  • --install-exit-handlers允许对来自Docker的关闭请求做出反应。

  • -H:+InlineBeforeAnalysis 启用分析之前的内联,以便允许实用程序方法返回常量,例如考虑删除代码。

  • --verbose 打印更详细的构建过程

  • -H:+ReportExceptionStackTraces 出错的时候提供更多细节。

  • --initialize-at-build-time 默认情况下在构建时初始化类,而未指定任何类或程序包。基于Netty的应用程序当前(希望是暂时)需要此选项,但其他应用程序不建议使用此选项,因为它会触发兼容性问题,尤其是有关日志记录和静态字段的问题。有关更多详细信息,请参见 this issue。如果需要,可以将其与特定的类或指定的包一起使用。

  • -H:+PrintAnalysisCallTree 有助于查找使用了哪些类,方法和字段以及原因。您可以在 reports documentation 中找到更多详细信息。

  • -H:ReportAnalysisForbiddenType=com.example.Foo 帮助查找指定的类为什么打包到了镜像中。

  • --trace-class-initialization 提供以逗号分隔的完整类名称的列表,跟踪其如何初始化的。

  • --trace-object-instantiation 提供以逗号分隔的完整类名称的列表,跟踪对象如何实例化。

  • --enable-all-security-services 加密和某些安全服务必需的(默认情况下,应在需要时由 Spring Native 通过 Native hints 启用)。

  • --enable-https 启用HTTPS支持(比如使用 WebClient 或 RestTemplate 时通常需要)。

访问过滤器文件

一个简单的 access-filter.json 文件。

{ "rules": [
  {"excludeClasses": "org.apache.maven.surefire.**"},
  {"excludeClasses": "net.bytebuddy.**"},
  {"excludeClasses": "org.apiguardian.**"},
  {"excludeClasses": "org.junit.**"},
  {"excludeClasses": "org.mockito.**"},
  {"excludeClasses": "org.springframework.test.**"},
  {"excludeClasses": "org.springframework.boot.test.**"},
  {"excludeClasses": "com.example.demo.test.**"}
  ]
}