所以这是一个问题,我找到了答案,而不是问一个问题,所以希望这是允许的.我有一个从1.2升级到1.3的流星应用程序并部署到一个docker容器中.我收到了这个错误:
/root/.meteor/packages/templating/.1.1.7.kbxyh0++os+web.browser+web.cordova/plugin.compileTemplatesBatch.os/npm/node_modules/meteor/promise/node_modules/meteor/promise/node_modules/meteor-promise/promise_server.js:116
throw error;
^
Error: Builder can not write without either data or a file path or a symlink path: os/packages/packages.json
at Builder.write (/tools/isobuild/builder.js:251:13)
at Builder.writeToGeneratedFilename (/tools/isobuild/builder.js:382:10)
at /tools/isobuild/isopack.js:1400:27
at Array.forEach (native)
at Function._.each._.forEach (/root/.meteor/packages/meteor-tool/.1.3.0_3.fc5itk++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/lib/node_modules/underscore/underscore.js:79:11)
at _.each.builder.copyDirectory.from (/tools/isobuild/isopack.js:1372:11)
at Array.forEach (native)
at Function._.each._.forEach (/root/.meteor/packages/meteor-tool/.1.3.0_3.fc5itk++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/lib/node_modules/underscore/underscore.js:79:11)
at /tools/isobuild/isopack.js:1263:9
at Isopack._.extend.saveToPath (/tools/isobuild/isopack.js:1641:7)
at /tools/isobuild/isopack-cache.js:323:23
at /tools/utils/buildmessage.js:359:18
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at /tools/utils/buildmessage.js:352:34
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at /tools/utils/buildmessage.js:350:23
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at Object.enterJob (/tools/utils/buildmessage.js:324:26)
at [object Object]._loadLocalPackage (/tools/isobuild/isopack-cache.js:260:18)
at /tools/isobuild/isopack-cache.js:194:16
at Function.time (/tools/tool-env/profile.js:305:10)
at /tools/isobuild/isopack-cache.js:193:17
at /tools/utils/buildmessage.js:359:18
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at /tools/utils/buildmessage.js:352:34
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at /tools/utils/buildmessage.js:350:23
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at Object.enterJob (/tools/utils/buildmessage.js:324:26)
at [object Object]._ensurePackageLoaded (/tools/isobuild/isopack-cache.js:184:20)
at /tools/isobuild/isopack-cache.js:75:14
at /tools/packaging/package-map.js:57:7
at Function._.each._.forEach (/root/.meteor/packages/meteor-tool/.1.3.0_3.fc5itk++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/lib/node_modules/underscore/underscore.js:87:22)
at [object Object].eachPackage (/tools/packaging/package-map.js:49:7)
at [object Object].buildLocalPackages (/tools/isobuild/isopack-cache.js:74:24)
at /tools/project-context.js:758:25
at /tools/utils/buildmessage.js:359:18
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at /tools/utils/buildmessage.js:352:34
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at /tools/utils/buildmessage.js:350:23
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at Object.enterJob (/tools/utils/buildmessage.js:324:26)
at ProjectContext._.extend._buildLocalPackages (/tools/project-context.js:757:18)
at /tools/project-context.js:278:9
at /tools/utils/buildmessage.js:359:18
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at /tools/utils/buildmessage.js:352:34
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at /tools/utils/buildmessage.js:350:23
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at Object.enterJob (/tools/utils/buildmessage.js:324:26)
at ProjectContext._completeStagesThrough (/tools/project-context.js:268:18)
at /tools/project-context.js:260:12
at Function.run (/tools/tool-env/profile.js:489:12)
at ProjectContext.prepareProjectForBuild (/tools/project-context.js:259:13)
at /tools/runners/run-app.js:557:29
at /tools/utils/buildmessage.js:271:13
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at /tools/utils/buildmessage.js:264:29
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at /tools/utils/buildmessage.js:262:18
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at /tools/utils/buildmessage.js:253:23
at [object Object].withValue (/tools/utils/fiber-helpers.js:89:14)
at Object.capture (/tools/utils/buildmessage.js:252:19)
at bundleApp (/tools/runners/run-app.js:556:31)
at AppRunner._runOnce (/tools/runners/run-app.js:634:35)
at AppRunner._fiber (/tools/runners/run-app.js:887:28)
at /tools/runners/run-app.js:411:12
我的第一个想法是,这是一个缓存问题与docker(http://thenewstack.io/understanding-the-docker-cache-for-faster-builds/)没有从install.meteor.com下拉最新的流星版本,因此一些奇怪的版本不匹配.我通过将Dockerfile中的行更改为:
RUN curl https://install.meteor.com/ | sh; echo "version 1.3"
真棒,修复了这个问题,现在我有了当前的流星版本,但我还是得到了错误.在这一点上,我只需要我的部署工作,因为我们正处于sprint的中间,在这里我们得到了迄今为止我最讨厌的解决方案之一:
我在名为packages.json的包dir中添加了一个符号链接,它指向我项目主目录中的packages.json.
如果有人想评论问题的根本原因是什么,以及一个非常棒的实际解决方案,但希望这可以帮助需要解决方法的其他人.
小智 0
首先删除有问题的包:
meteor remove npm-container
meteor remove meteorhacks:npm
然后,您需要修复任何旧的 NpmRequire 代码才能以新方式执行此操作。在 Meteor 1.3 中,您现在可以像使用任何 Node.js 应用程序一样使用 npm。
meteor npm init创建package.json
meteor npm install --save underscore在您的应用程序中添加依赖项
现在您可以通过以下方式将其导入您的应用程序:
import _ from 'underscore'或者var _ = require('underscore')
有关完整说明,请参阅http://guide.meteor.com/using-packages.html
| 归档时间: |
|
| 查看次数: |
1199 次 |
| 最近记录: |