当我更新到 0.6.5 时,我遇到了同样的困境。
我目前正在做的是得到这样的路径:
var meteor_root = Npm.require('fs').realpathSync( process.cwd() + '/../' );
这将返回开发模式:
/my/application/.meteor/local/build/programs
在捆绑模式下:
/my/application/build/app/programs
所以从这里我进入我的应用程序的“根”路径,如下所示:
var application_root = Npm.require('fs').realpathSync( meteor_root + '/../' );
// if running on dev mode
if( Npm.require('path').basename( Npm.require('fs').realpathSync( meteor_root + '/../../../' ) ) == '.meteor' ){
application_root = Npm.require('fs').realpathSync( meteor_root + '/../../../../' );
}
唯一会失败的情况是,如果您碰巧将应用程序的文件夹命名为“.meteor”,但这是一种极端情况。
相对于此,您可以访问您需要的任何其他内容。
此外,您还可以直接访问流星捆绑器创建的资产文件夹:
var assets_folder = meteor_root + '/server/assets/' + Npm.require('path').basename( application_root );
这可能是暂时的,因为我希望最终会添加更好的文件/路径交互 API。
希望有帮助