gpt4 book ai didi

java - 无法在 Eclipse 中保存 .html 文件

转载 作者:搜寻专家 更新时间:2023-10-31 22:21:29 24 4
gpt4 key购买 nike

我正在 eclipse 中开发一个 javascript 项目。静态 html 和 javascript 文件需要访问我的服务的 restful 端点,所以我将它们放在带有这些端点的 java 项目中,这样我就可以访问它们而不会出现跨域问题。

突然之间,如果我尝试保存对我的 html 文件的更改,我不能,除非我停止 java 应用程序的运行。

事件的顺序是这样的:

Run java web app with Jetty

Can save changes to html file.

Open html file in chrome with url: http://127.0.0.1:8901/myapp/myapp-admin.html

Cannot save changes to html file.

Close chrome.

Still can't save changes.

Stop jetty running in eclipse.

Can save changes.

当我尝试保存时出现以下错误:

Save could not be completed. Try File > Save As... if the problem persists.

Reason:
Could not write file:
C:\{path to file}\myapp-admin.html

(The requested operation cannot be performed on a file with a user-mapped section open)

如果我尝试使用另存为覆盖该文件,它仍然不起作用,并出现错误:

Save could not be completed. Could not write file: {etc.}

这是 html 文件:

<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
<head>


<title>myapp Admin</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<h1>myapp</h1>

</body>
</html>

我唯一改变的是它们在 web.xml 中的映射方式。基本上,在我使用 Spring Controller 等以 Spring 方式渲染它们之前。

现在我静态渲染它们,使用:

<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.html</url-pattern>
<url-pattern>*.js</url-pattern>
<url-pattern>*.css</url-pattern>
</servlet-mapping>

但不知道为什么会出现这种问题。

Spring 是这样映射的:

<!-- Declare a Spring MVC DispatcherServlet as usual -->
<servlet>
<servlet-name>spring</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- Configure DispatcherServlet to use AnnotationConfigWebApplicationContext
instead of the default XmlWebApplicationContext -->
<init-param>
<param-name>contextClass</param-name>
<param-value>
org.springframework.web.context.support.AnnotationConfigWebApplicationContext
</param-value>
</init-param>
</servlet>

<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>

谁能帮我弄清楚这里出了什么问题,是否有办法让它像我想要的那样工作?

最佳答案

您在 Windows 上遇到了典型的文件锁定问题。 (这不会发生在任何风格的 unix、linux 或 osx 上)

尝试遵循 troubleshooting locked files on windows 中的指南为您的特定网络应用禁用 Jetty 的高级性能功能。

(链接到 Jetty 9 文档,因为您没有指定您使用的 Jetty 版本)

关于java - 无法在 Eclipse 中保存 .html 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17078028/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com