我正在尝试自动化每周生成一个数据库。作为此过程的第一步,我需要从网络位置M:\
获取一组文件。过程如下:
REMOVE_OLD_FILES
)中删除任何可能剩余的旧源文件。GET_FILES
)获取所需文件的名称。COPY/MOVE FILES
)第3步是我遇到麻烦的地方,我经常收到以下错误:
Error processing files. Exception : org.apache.commons.vfs.FileNotFoundException: Could not read from "file:///M:/FILESOURCE/FILENAME.zip" because it is a not a file.
但是,当我手动在网络位置找到“错误”文件并尝试打开或复制它时,没有问题。如果我然后重新运行Spoon作业,则此文件不会发生错误(尽管下一个文件可能会导致错误)。
到目前为止,我已经验证步骤1和2是否正确运行:更具体地说,从步骤2返回的文件名中没有错误。
显然,我不希望首先手动打开所有文件,以确保Spoon能够正确复制它们。有没有人知道可能导致这种行为的原因是什么?
为了完整性,以下是在COPY/MOVE FILES
步骤中选择的参数。
答案 0 :(得分:2)
我遇到了与不同客户相同的问题,最后我尝试了一些基本方法,并得到了解决。它也可能对你的情况有所帮助。
此外,其他用户可以遵循此规则。
试试这个:使用Spoon Job“创建一个文件夹”创建所有必需的文件夹,并在创建文件夹后从作业或转换中删除/删除那些跃点。
这是因为,您用来删除文件的用户无法识别为Windows用户。文件夹到位后,您可以从作业中删除“创建文件夹”步骤。
答案 1 :(得分:0)
文件的路径错误。如果您在Windows环境中运行勺子,则应使用Windows格式的文件路径。尝试从
更改“文件:/// L:/FILESOURCE/FILENAME.zip”
要
“M:\ FILESOURCE \ FILENAME.zip”
顺便说一下,只有当M:是机器中的实际驱动器时才会起作用。如果要访问网络中的文件,则应使用共享文件夹的网络路径,这样:
“\\计算机\ M $ \ FILESOURCE \ FILENAME.zip”
或
“\\计算机\ FILESOURCE \ FILENAME.zip”
如果您尝试访问网络安装驱动器中的文件,它将无法正常工作。