Ruby CloudFoundry上node.js和FTP的jsftp

Ruby CloudFoundry上node.js和FTP的jsftp,ruby,node.js,ftp,cloud-foundry,vmc,Ruby,Node.js,Ftp,Cloud Foundry,Vmc,我正在测试一个小主意,即在CloudFoundry上使用node.js脚本在另一个FTP站点中编写文件 var Ftp = require("jsftp"); var ftp = new Ftp({ host: "ftp.somesite.com", user: "username", port: 21, pass: "password" }); var remotePath = "/test.txt"; var data = 'this is a tes

我正在测试一个小主意,即在CloudFoundry上使用node.js脚本在另一个FTP站点中编写文件

var Ftp = require("jsftp");

var ftp = new Ftp({
    host: "ftp.somesite.com",
    user: "username",
    port: 21, 
    pass: "password"
});

var remotePath = "/test.txt";

var data = 'this is a test string';

ftp.getPutSocket(remotePath, function(err, socket) {
    socket.write(data, function(err) {
        console.log('good');
        socket.end();
    });
});
然而,当我做vmc推送时,我得到了这个错误

Uploading my-ftp... FAILED
Upload failed. Try again with 'vmc push'.
Errno::ENOENT: No such file or directory - C:/Users/myUsername/AppData/Local/Temp/.
vmc_my-ftp_files/node_modules/jsftp/test/test_c9/??.md
For more information, see ~/.vmc/crash
崩溃文件也没有告诉我多少:

Errno::ENOENT: No such file or directory - C:/Users/myUsername/AppData/Local/Temp/.vmc_my-ftp_files/node_modules/jsftp/test/test_c9/??.md

cfoundry-0.4.14/lib/cfoundry/upload_helpers.rb:146:in `size'
cfoundry-0.4.14/lib/cfoundry/upload_helpers.rb:146:in `block in make_fingerprints'
cfoundry-0.4.14/lib/cfoundry/upload_helpers.rb:143:in `glob'
cfoundry-0.4.14/lib/cfoundry/upload_helpers.rb:143:in `make_fingerprints'
cfoundry-0.4.14/lib/cfoundry/upload_helpers.rb:125:in `determine_resources'
cfoundry-0.4.14/lib/cfoundry/upload_helpers.rb:44:in `upload'
vmc-0.4.7/lib/vmc/cli/app/push.rb:119:in `block in upload_app'
interact-0.5.0/lib/interact/progress.rb:98:in `with_progress'
vmc-0.4.7/lib/vmc/cli/app/push.rb:118:in `upload_app'
vmc-0.4.7/lib/vmc/cli/app/push.rb:100:in `setup_new_app'
vmc-0.4.7/lib/vmc/cli/app/push.rb:82:in `push'
mothership-0.3.5/lib/mothership/base.rb:61:in `run'
mothership-0.3.5/lib/mothership/command.rb:68:in `block in invoke'
manifests-vmc-plugin-0.4.19/lib/manifests-vmc-plugin/plugin.rb:113:in `call'
manifests-vmc-plugin-0.4.19/lib/manifests-vmc-plugin/plugin.rb:113:in `block (2 levels) in <class:Manifests>'
mothership-0.3.5/lib/mothership/callbacks.rb:74:in `with_filters'
manifests-vmc-plugin-0.4.19/lib/manifests-vmc-plugin/plugin.rb:112:in `block in <class:Manifests>'
mothership-0.3.5/lib/mothership/command.rb:78:in `instance_exec'
mothership-0.3.5/lib/mothership/command.rb:78:in `block (2 levels) in invoke'
mothership-0.3.5/lib/mothership/command.rb:82:in `instance_exec'
mothership-0.3.5/lib/mothership/command.rb:82:in `invoke'
mothership-0.3.5/lib/mothership/base.rb:50:in `execute'
vmc-0.4.7/lib/vmc/cli.rb:106:in `execute'
mothership-0.3.5/lib/mothership.rb:45:in `start'
vmc-0.4.7/bin/vmc:11:in `<top (required)>'
C:/Ruby193/bin/vmc:23:in `load'
C:/Ruby193/bin/vmc:23:in `<main>'

知道我做错了什么吗?它在本地主机上运行得很好。

我已经尝试过了,它似乎上传得很好。使用节点应用程序时,我总是会小心地确保packages.json文件中的内容与node_模块的内容相匹配。当然,在尝试推送之前,请完全删除节点_模块并重新运行“npm安装”


此外,由于这似乎不是基于http的应用程序,请记住通过为框架选择“其他”,然后选择“独立”,将框架设置为独立。正确的答案是删除node_modules/jsftp中的“test”文件夹。因此,我删除了node_modules/jsftp中的“test”文件夹,它现在可以工作了。你知道为什么吗?所以有一个额外的文件夹,它给出了错误?Node将尝试加载Node_modules文件夹中的所有内容,而不管packages.json指定了什么。我应该查看哪个packages.json?在node_模块中有很多。但我的主应用程序文件夹中没有。