gpt4 book ai didi

java - 在Web服务器中写入文件而不指定真实路径

转载 作者:行者123 更新时间:2023-11-30 04:41:21 24 4
gpt4 key购买 nike

在我的应用程序中,我有一个函数,我需要在 webcontent 文件夹中写入一个文件,我有一个名为 data 的文件夹,如果我给出了真实路径( C:\Users\SanWin\workspace\RoleAccessControl\data\ActivityLog.txt)它写入文件,但是当项目在不同的计算机上运行时,这必须改变,所以我用它来获取真实路径

ServletContext ctx = getServletContext();
String path = ctx.getRealPath("/data/ActivityLog.txt");
System.out.println(path);

当我打印时,我在控制台中收到以下消息

C:\Users\SanWin\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\RoleAccessControl\data\ActivityLog.txt

我不知道系统如何得到这一行

.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\

这是在 eclipse 中,我期待类似的东西C:\Users\SanWin\workspace\RoleAccessControl\data\ActivityLog.txt

如何获得我想要摆脱这些行的真实路径(.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps),我看了并做了我在互联网上看到的所有可能的事情,但是失败了,抱歉,如果我发了重复的帖子,请原谅感谢您的时间和回复

最佳答案

在 Eclipse 的“服务器” View 中,您可以双击服务器打开一个配置屏幕,该屏幕允许您设置不同的部署路径(至少在 Tomcat 中)。请注意,只有在未部署任何内容时才能修改该设置,否则您将看到选项呈灰色。

enter image description here

您获得的 .metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\ 是因为您有使用工作区元数据选项。

无论如何,如果您直接将 war 手动部署到 Tomcat webapps 文件夹中,而不使用 Eclipse,您将获得正确的路径。

换句话说,您的代码是正确的,并且为您提供了正确的路径,您只是不喜欢部署应用程序的路径。

希望这有帮助。

关于java - 在Web服务器中写入文件而不指定真实路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12223108/

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