首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >从Netbeans启动Tomcat失败

从Netbeans启动Tomcat失败
EN

Stack Overflow用户
提问于 2014-03-06 21:17:55
回答 6查看 138.3K关注 0票数 66

我在从Netbeans IDE 7.4启动Apache Tomcat6时遇到了问题(在7.3版本中,我也遇到了同样的问题。其他人提到,这个问题也存在于其他版本中,如8.0等)。

我做了什么:

  • remove安装Tomcat7(没有删除,我也有同样的困难)
  • 添加新服务器,从Apache tomcat网站下载(版本apache- Tomcat -6.0.39,与其他版本我有相同的问题)
  • 我的服务器位置: D:\apache- tomcat -netbeans
  • 系统变量CATALINA_HOME: D:\apache- Tomcat -netbeans

<>H19系统变量JAVA HOME: C:\Program Files\Java\jdk1.7.0_51\ <代码>H210<代码>H111tomcat用户:我让netbeans创建新用户,名为tomcat,密码为tomcat。当我在添加服务器后打开{tomcat}\conf\tomcat-users.xml文件时,有关于我的用户的信息:

< user password="tomcat“roles="manager,admin”username="tomcat"/ >

当我现在点击"start",我得到了"Starting of Tomcat failed“。

我的怀疑是:

  • 我以管理员身份在Windows7上工作,所以我认为这不是文件权限的问题。
  • 禁用代理无济于事。
  • 日志:只创建了一个日志文件: localhost.2014-03-06.log,为空。
  • 以管理员身份启动startup.bat)

无济于事。从命令行启动

  • 一切正常,在正常或调试模式下启动都没有问题(catalina.bat jpda start或Netbeans
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2014-10-15 11:47:47

它至少会影响NetBeans版本7.4到8.0.2。该漏洞最初是从8.0版开始报告的,并在NetBeans 8.1中修复。任何tomcat版本都会有这个问题(在7.0.56到8.0.28版本中得到确认)。

具体内容描述为Netbeans bug #248182

此问题还与提及以下错误输出的发布相关:

'127.0.0.1*‘未被识别为内部或外部命令、可操作程序或批处理文件。

对于从压缩文件安装的tomcat,我通过更改tomcat bin目录中的catalina.bat文件修复了它。

catalina.bat文件中找到下面的配置。

代码语言:javascript
复制
:noJuliConfig
set "JAVA_OPTS=%JAVA_OPTS% %LOGGING_CONFIG%"

:noJuliManager
set "JAVA_OPTS=%JAVA_OPTS% %LOGGING_MANAGER%"

并将其更改为如下所示,删除双引号

代码语言:javascript
复制
:noJuliConfig
set JAVA_OPTS=%JAVA_OPTS% %LOGGING_CONFIG%

:noJuliManager
set JAVA_OPTS=%JAVA_OPTS% %LOGGING_MANAGER%

现在保存您的更改,并从NetBeans中启动tomcat。

票数 164
EN

Stack Overflow用户

发布于 2016-07-09 09:51:40

这会影响:

  • 从8.5.3开始的所有版本的Tomcat。
  • 8.1之前的所有版本(已在Netbeans 8.2中修复)。

这是因为Netbeans没有‘看到’tomcat已经启动,尽管它启动得很好。

我已经提交了Bug #262749 with NetBeans

解决方法

server.xml文件中,在HTTP1.1的Connector元素中添加以下属性:server="Apache-Coyote/1.1"

示例:

代码语言:javascript
复制
<Connector
  connectionTimeout="20000"
  port="8080"
  protocol="HTTP/1.1"
  redirectPort="8443"
  server="Apache-Coyote/1.1"
/>

原因

原因是在8.5.3之前,默认设置是将服务器标头设置为Apache-Coyote/1.1,而自8.5.3以来,此默认设置已更改为空。显然,Netbeans会检查此标头。

也许在未来,我们可以期待netbeans解决这个问题的修复。

我能够将其追溯到文档中的更改。

Tomcat 8.5

“覆盖http响应的服务器标头。如果设置,此属性的值将覆盖web应用程序设置的任何服务器标头。如果未设置,则使用应用程序指定的任何值。如果应用程序未指定值,则不设置服务器标头。”

Tomcat 8.0

“覆盖http响应的服务器标头。如果设置,此属性的值将覆盖Tomcat默认值和web应用程序设置的任何服务器标头。如果未设置,则使用应用程序指定的任何值。如果应用程序未指定值,则使用Apache-Coyote/1.1。除非您是偏执狂,否则不需要此功能。”

这解释了从8.5.3版开始需要显式添加server属性的原因。

票数 78
EN

Stack Overflow用户

发布于 2017-04-16 06:26:08

此外,很可能是代理设置的问题。

任何没能克服Tomact启动问题的人,- try in NetBeans在Tools -> Options -> General选项卡中选择No Proxy

这对我有帮助。

票数 22
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22225764

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档