java - Dropwizard 项目的 Maven 执行程序无法正常工作
问题描述
我尝试构建一个 Dropwizard 应用程序,当我尝试使用 mvn exec:java 执行它时,包括
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.6.0</version>
<configuration>
<mainClass>${mainClass}</mainClass> //the application java class from properties tag
<arguments>
<argument>server</argument>
</arguments>
</configuration>
</plugin>
在命令提示符下使用 mvn 命令 > mvn exec:java 期望它构建和部署它,而不是得到以下问题
[INFO] --- exec-maven-plugin:1.6.0:java (default-cli) @ hello-dropwizard ---
[WARNING]
java.lang.ArrayIndexOutOfBoundsException: 1
at org.hibernate.validator.internal.util.Version.getJavaRelease(Version.java:36)
at org.hibernate.validator.internal.engine.ConfigurationImpl.<init>(ConfigurationImpl.java:120)
at org.hibernate.validator.internal.engine.ConfigurationImpl.<init>(ConfigurationImpl.java:106)
at org.hibernate.validator.HibernateValidator.createSpecializedConfiguration(HibernateValidator.java:27)
at org.hibernate.validator.HibernateValidator.createSpecializedConfiguration(HibernateValidator.java:24)
at javax.validation.Validation$ProviderSpecificBootstrapImpl.configure(Validation.java:220)
at io.dropwizard.validation.BaseValidator.newConfiguration(BaseValidator.java:28)
at io.dropwizard.jersey.validation.Validators.newConfiguration(Validators.java:35)
at io.dropwizard.jersey.validation.Validators.newValidatorFactory(Validators.java:27)
at io.dropwizard.setup.Bootstrap.<init>(Bootstrap.java:68)
at io.dropwizard.Application.run(Application.java:72)
at com.dropwizard.demo.HeloDropWizardApplication.main
这种行为有什么原因吗?
解决方案
注意到我在系统中安装了 java 9,对休眠验证器类的研究很少,它期望返回 8,因为我有 9 版本没有以特定方式返回,如下面的代码
String[] specificationVersion = System.getProperty( "java.specification.version" ).split( "\\." );
return Integer.parseInt( specificationVersion[1] );
我已经更改了 PATH 以包含 java 1.8 路径,即使 maven 抛出了相同的异常。我必须使用 >mvn package
然后使用 >java -jar target\dropwizarddemo.jar server
推荐阅读
- flutter - 在 Flutter 中构建动态小部件
- bluetooth-lowenergy - BLE 设备可以充当信标吗
- android - 如何在基于 Y 轴范围的 Android(Java) MP 图表中设置多种背景颜色
- amazon-web-services - 将 PHP 应用程序从 Jenkins 复制到 /var/www/html
- c# - 有没有办法从 .pfx 文件生成 .crt 和 .key ?
- javascript - 在主干js中使用_.each迭代模型数组
- java - 在后台运行带有 javax.sound.sampled.Clip 的声音
- python - 是否可以在 OpenCV 缝合器 python 中选择混合类型
- reactjs - TypeError:fs.existsSync 不是函数(Electron/ReactJS/Typescript)
- java - 切换活动后会话结束 || 每次打开应用程序时都需要登录