Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java正在tomcat bin文件夹中创建文件_Java_Tomcat - Fatal编程技术网

Java正在tomcat bin文件夹中创建文件

Java正在tomcat bin文件夹中创建文件,java,tomcat,Java,Tomcat,我已经编写了一个java程序,我正在其中创建一个文件 BufferedWriter writer = new BufferedWriter( new OutputStreamWriter( new FileOutputStream("myfile.txt")) 它正在当前文件夹(我的项目文件夹)中创建文件。直到这里一切都很完美。现在我设计了一个servlet并调用这个类。现在正在tomcat bin文件夹中创建该文件。我是否需要对tomcat中

我已经编写了一个java程序,我正在其中创建一个文件

BufferedWriter writer = 
    new BufferedWriter(
        new OutputStreamWriter(
            new FileOutputStream("myfile.txt"))
它正在当前文件夹(我的项目文件夹)中创建文件。直到这里一切都很完美。现在我设计了一个servlet并调用这个类。现在正在tomcat bin文件夹中创建该文件。我是否需要对tomcat中的
classpath
server.xml
context.xml
进行任何更改?

原因:

您的程序正在“当前工作目录”中创建新文件

由于它是在Tomcat内部运行的servlet,“当前目录”恰好是Tomcat的“bin”目录

建议:

  • 如果可能,请使用完全限定路径(
    “/tmp/myfile.text”

  • 您还可以相对于
    getServletContext()
    编写文件:

  • 您可以使用相对路径,并在属性文件(
    WEB-INF\myprog.properties
    )或JVM参数(
    -D filepath=/my/file/path
    )中参数化该路径
请参阅此