2017-05-17 24 views
0
  1. Meteor JSのサーバー側からPDFを生成しようとしています。パッケージbryanmorgan:webshotがMeteorビルドに失敗する

  2. 私はmeteorhacksを追加しました:SSR、meteorhacks:私はbryanmorganを追加するとNPMまず、私のビルドは

成功しましたが:私はエラーがある以下、流星にをwebshotと流星を走りました直面し、

=> Started proxy. 
=> Started MongoDB. 
C:\Users\a\AppData\Local\.meteor\packages\meteor-tool\1.4.4_2\mt-os.windows.x86_ 
32\dev_bundle\lib\node_modules\meteor-promise\promise_server.js:190 
     throw error; 
    ^

Error: Builder can not write without either data or a file path or a symlink pat 
h: os/packages/packages.json 
    at Builder.write (C:\tools\isobuild\builder.js:259:13) 
    at Builder.writeToGeneratedFilename (C:\tools\isobuild\builder.js:390:10) 
    at C:\tools\isobuild\isopack.js:1388:21 
    at Array.forEach (native) 
    at Function._.each._.forEach (C:\Users\a\AppData\Local\.meteor\packages\mete 
or-tool\1.4.4_2\mt-os.windows.x86_32\dev_bundle\lib\node_modules\underscore\unde 
rscore.js:79:11) 
    at C:\tools\isobuild\isopack.js:1381:11 
    at Array.forEach (native) 
    at Function._.each._.forEach (C:\Users\a\AppData\Local\.meteor\packages\mete 
or-tool\1.4.4_2\mt-os.windows.x86_32\dev_bundle\lib\node_modules\underscore\unde 
rscore.js:79:11) 
    at [object Object].saveToPath (C:\tools\isobuild\isopack.js:1271:9) 
    at C:\tools\isobuild\isopack-cache.js:380:23 
    at C:\tools\utils\buildmessage.js:359:18 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at C:\tools\utils\buildmessage.js:352:34 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at C:\tools\utils\buildmessage.js:350:23 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at Object.enterJob (C:\tools\utils\buildmessage.js:324:26) 
    at IsopackCache._loadLocalPackage (C:\tools\isobuild\isopack-cache.js:317:18 
) 
    at C:\tools\isobuild\isopack-cache.js:251:16 
    at Function.time (C:\tools\tool-env\profile.js:305:10) 
    at C:\tools\isobuild\isopack-cache.js:250:17 
    at C:\tools\utils\buildmessage.js:359:18 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at C:\tools\utils\buildmessage.js:352:34 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at C:\tools\utils\buildmessage.js:350:23 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at Object.enterJob (C:\tools\utils\buildmessage.js:324:26) 
    at IsopackCache._ensurePackageLoaded (C:\tools\isobuild\isopack-cache.js:241 
:20) 
    at C:\tools\isobuild\isopack-cache.js:77:14 
    at C:\tools\packaging\package-map.js:57:7 
    at Function._.each._.forEach (C:\Users\a\AppData\Local\.meteor\packages\mete 
or-tool\1.4.4_2\mt-os.windows.x86_32\dev_bundle\lib\node_modules\underscore\unde 
rscore.js:87:22) 
    at [object Object]._.extend.eachPackage (C:\tools\packaging\package-map.js:4 
9:7) 
    at IsopackCache.buildLocalPackages (C:\tools\isobuild\isopack-cache.js:76:24 
) 
    at C:\tools\project-context.js:841:25 
    at C:\tools\utils\buildmessage.js:359:18 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at C:\tools\utils\buildmessage.js:352:34 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at C:\tools\utils\buildmessage.js:350:23 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at Object.enterJob (C:\tools\utils\buildmessage.js:324:26) 
    at ProjectContext._buildLocalPackages (C:\tools\project-context.js:840:18) 
    at C:\tools\project-context.js:283:9 
    at C:\tools\utils\buildmessage.js:359:18 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at C:\tools\utils\buildmessage.js:352:34 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at C:\tools\utils\buildmessage.js:350:23 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at Object.enterJob (C:\tools\utils\buildmessage.js:324:26) 
    at ProjectContext._.extend._completeStagesThrough (C:\tools\project-context. 
js:273:18) 
    at C:\tools\project-context.js:265:12 
    at Function.run (C:\tools\tool-env\profile.js:490:12) 
    at ProjectContext._.extend.prepareProjectForBuild (C:\tools\project-context. 
js:264:13) 
    at C:\tools\runners\run-app.js:563:29 
    at C:\tools\utils\buildmessage.js:271:13 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at C:\tools\utils\buildmessage.js:264:29 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at C:\tools\utils\buildmessage.js:262:18 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at C:\tools\utils\buildmessage.js:253:23 
    at [object Object]._.extend.withValue (C:\tools\utils\fiber-helpers.js:89:14 
) 
    at Object.capture (C:\tools\utils\buildmessage.js:252:19) 
    at bundleApp (C:\tools\runners\run-app.js:562:31) 
    at [object Object]._.extend._runOnce (C:\tools\runners\run-app.js:631:35) 
    at [object Object]._.extend._fiber (C:\tools\runners\run-app.js:890:28) 
    at C:\tools\runners\run-app.js:417:12 

私の現在のパッケージには、以下のように

です
+1

なぜ流星ハックを使用しますか:npm? 「Meteor 1.3にはNPMサポートが組み込まれているので、Meteor 1.3ではこのパッケージには何も追加されません」このパッケージを削除するとどうなりますか? – Jankapunkt

+0

それは動作します。しかし、私はPDFを生成したいので、どんな助け? –

+1

パッケージは 'require(" webshot ");'を使います。なぜなら、bryanmorgan:webshotを削除し、代わりにnamパッケージ "webshot"を使用するとどうなりますか? https://github.com/BryanMorgan/webshot/blob/master/lib/webshot.js – Jankapunkt

答えて

1

あなたのパッケージリストを新しい新しいプロジェクトにコピーし、いくつかのエラーがありました。だから、最初の私は、最初の1が非推奨となり、二番目が認識されない

meteor remove meteorhacks:npm 
meteor remove npm-container 

を削除する必要がありました。

アプリを起動した後、私は次のエラーを得た:

はっきりbryanmorganから来
While loading bryanmorgan:[email protected]: 
    error: Command failed: 
    /Users/jank87/.meteor/packages/meteor-tool/.1.4.4_2.cf7olq++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/bin/npm 
    rebuild --update-binary 
    Phantom installation failed { [Error: EACCES: permission denied, open 
    '/private/var/folders/q_/nyqwc8q55qx3c_153hvt8zy00000gn/T/mt-1wya3ja/npm/node_modules/webshot/node_modules/phantomjs/lib/location.js'] 
    errno: -13, 
    code: 'EACCES', 
    syscall: 'open', 
    path: 
    '/private/var/folders/q_/nyqwc8q55qx3c_153hvt8zy00000gn/T/mt-1wya3ja/npm/node_modules/webshot/node_modules/phantomjs/lib/location.js' 
    } Error: EACCES: permission denied, open 
    '/private/var/folders/q_/nyqwc8q55qx3c_153hvt8zy00000gn/T/mt-1wya3ja/npm/node_modules/webshot/node_modules/phantomjs/lib/location.js' 
    at Error (native) 
    at Object.fs.openSync (evalmachine.<anonymous>:549:18) 
    at Object.fs.writeFileSync (evalmachine.<anonymous>:1156:15) 
    at writeLocationFile 
    (/private/var/folders/q_/nyqwc8q55qx3c_153hvt8zy00000gn/T/mt-1wya3ja/npm/node_modules/webshot/node_modules/phantomjs/install.js:161:6) 
    at Promise._successFn 
    (/private/var/folders/q_/nyqwc8q55qx3c_153hvt8zy00000gn/T/mt-1wya3ja/npm/node_modules/webshot/node_modules/phantomjs/install.js:142:5) 
    at Promise._call 
    (/private/var/folders/q_/nyqwc8q55qx3c_153hvt8zy00000gn/T/mt-1wya3ja/npm/node_modules/webshot/node_modules/phantomjs/node_modules/kew/kew.js:373:13) 
    at Promise._withInput 
    (/private/var/folders/q_/nyqwc8q55qx3c_153hvt8zy00000gn/T/mt-1wya3ja/npm/node_modules/webshot/node_modules/phantomjs/node_modules/kew/kew.js:333:25) 
    at Promise.resolve 
    (/private/var/folders/q_/nyqwc8q55qx3c_153hvt8zy00000gn/T/mt-1wya3ja/npm/node_modules/webshot/node_modules/phantomjs/node_modules/kew/kew.js:105:27) 
    at resolver 
    (/private/var/folders/q_/nyqwc8q55qx3c_153hvt8zy00000gn/T/mt-1wya3ja/npm/node_modules/webshot/node_modules/phantomjs/node_modules/kew/kew.js:409:17) 
    at FSReqWrap.oncomplete (evalmachine.<anonymous>:82:15) 
    npm ERR! code ELIFECYCLE 
    npm ERR! errno 1 
    npm ERR! [email protected] install: `node install.js` 
    npm ERR! Exit status 1 

:webshotパッケージ。

私が以前コメントしたように、bryanmorgan:webshotパッケージはnpmパッケージのwebshotを使用します。だから私はbryanmorgan削除:webshotをしてNPMパッケージを追加:

meteor remove bryanmorgan:webshot 
meteor npm install --save webshot 

成功し、私の流星サーバーの再起動を行いました。 webshotをし、私たち自身のwebshotを作成しようとしている:今bryanmorganに見てみる

webshot.js

import _webshot from 'webshot'; 

webshot = function (url, filePath, options, callback) { 
    var webshotAsync = Meteor.wrapAsync(_webshot); 
    var callback = [].slice.apply(arguments).pop(); 

    if (typeof callback !== 'function') { 
     throw new Error("Missing callback function"); 
    } 
    if (arguments.length === 2) { 
     return webshotAsync(url, callback); 
    } else if (arguments.length === 3) { 
     return webshotAsync(url, filePath, callback); 
    } 

    webshotAsync(url, filePath, options, callback); 
}; 


webshot("http://google.com", "./tmp/google.png", function (err) { 
    // screenshot saved to /tmp/google.png 
    console.log(err); 
}); 

は正常に動作し、必要に応じてwebshotを作成します。

関連する問題