从IntelliJ Idea 2018.1到Glassfish 5.0.1的应用程序尚未部署

时间:2018-07-08 10:07:20

标签: java macos intellij-idea glassfish

请帮帮我!我无法从IDE部署应用程序。当我运行应用程序时,glassfish正在启动,但无法部署应用程序。 我正在尝试将密码设置为domain1,但是仍然相同。

Idea2018.1,MacOs 10.13.5,Glassfish 5.0.1,JDK 1.8.0.141

没有任何错误,但: 除以下以外没有错误: 消息:java.lang.NoSuchMethodError:com.sun.enterprise.admin.util.AuthenticationInfo。(Ljava / lang / String; Ljava / lang / String;)V堆栈跟踪:com.intellij.javaee.process.common.JavaeeProcessUtilException: java.lang.NoSuchMethodError:com.sun.enterprise.admin.util.AuthenticationInfo。(Ljava / lang / String; Ljava / lang / String;)V在com.intellij.javaee.process.common.MethodInvocator.invoke(MethodInvocator。 com.intellij.javaee.oss.process.JavaeeProcess.processRequest(JavaeeProcess.java:112)处com.intellij.javaee.osee.process.JavaeeProcess.run(JavaeeProcess.java:52)处的java:47) .javaee.oss.process.JavaeeProcess.main(JavaeeProcess.java:31)由以下原因引起:java.lang.NoSuchMethodError:com.sun.enterprise.admin.util.AuthenticationInfo。(Ljava / lang / String; Ljava / lang / String ;)在com.intellij.javaee.oss.glassfish.agent.Glassfish3AgentBase.invoke(Glassfish3AgentBase.java:183)上的com.intellij.javaee.oss.glassfish.agent.Glassfish31Agent.getConnection(Glassfish31Agent.java:36) com.intellij.javaee。 oss.glassfish.agent.Glassfish3AgentBase.doConnect(Glassfish3AgentBase.java:39)位于com.intellij.javaee.oss.agent.SimpleAgentBase $ 1.doJob(SimpleAgentBase.java:17)位于com.intellij.javaee.oss.agent.SimpleAgentBase在com.intellij.javaee.oss.agent.SimpleAgentBase.connect(SimpleAgentBase.java :)处$ 1.doJob(SimpleAgentBase.java:13)在com.intellij.javaee.oss.agent.SimpleAgentJob.perform(SimpleAgentJob.java:12) 25)在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)在java.lang.reflect处sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) .Method.invoke(Method.java:498)位于com.intellij.javaee.process.common.MethodInvocator.invoke(MethodInvocator.java:41)...还有3

3 个答案:

答案 0 :(得分:1)

我已经在Jetbrains上发布了一个问题,其中包含很多信息:https://youtrack.jetbrains.com/issue/IDEA-194181

最后一个功能版本是GF 5.0.1(内部版本20171121)。

他们为破坏IDEA插件所做的更改如下:https://github.com/javaee/glassfish/commit/aeca5223f4ede5ea4423497c4f83e80f9cfb7185#diff-7bc38f41e6b87d51ceff9f429e1d6375

他们将构造函数的协定从String-> char []更改为不使用JVM的String池的安全密码。

答案 1 :(得分:0)

Glassfish 5.0.1破坏了IntelliJ适配器(可能会更改某些API)。在JetBrains修复此问题之前,请使用旧版本。 5.0或4对我有用。

答案 2 :(得分:0)

我是负责IDEA GlassFish集成的开发人员。根据一般经验,我们不支持应用程序服务器的夜间流,直到它们至少达到Release候选阶段。

我已请求GF团队在https://github.com/javaee/glassfish/pull/22336回退更改。

在此之前,请考虑切换到相应的Payara版本,他们报告已解决了此向后兼容性问题。

如果在他们的RC之前无法在GlassFish中解决该问题,我将在IDEA代码中添加特定于版本的解决方法。

如果您绝对必须使用此特定GF版本,请在https://youtrack.jetbrains.com/issue/IDEA-194181 ping我,我将准备适用于该特定GF版本的非官方插件版本(但以前的任何版本都将失败) GF建立)。