执行启动脚本失败

Posted

技术标签:

【中文标题】执行启动脚本失败【英文标题】:Failed to exec start script 【发布时间】:2018-04-29 01:44:22 【问题描述】:

角度:5.0.1 / 角 CLI:1.5.0 / 节点:8.9.1 / npm: 5.5.1 / 操作系统:win32 x64

在终端/命令提示符下执行“npm start”时出现以下错误。谁能帮我解决这个问题?我花了一整天的时间试图修复它,但没有成功。

这是我的 package.json 的脚本部分

"scripts": 
    "start": "webpack-dev-server --inline --progress --port 8080"
  ,

webpack.config.js

module.exports = require('./config/webpack.dev.js');

webpack.common.js

var webpack = require('webpack');
var htmlWebpackPlugin = require('html-webpack-plugin');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
var helpers = require('./helpers');

module.exports = 
  entry: 
    'polyfills': './src/polyfills.ts',
    'vendor': './src/vendor.ts',
    'app': './src/main.ts'
  ,

  resolve: 
    extensions: ['.ts', '.js']
  ,

  module: 
    rules: [
      
        test: /\.ts$/,
        loaders: [
          
            loader: 'awesome-typescript-loader',
            options:  configFileName: helpers.root('src', 'tsconfig.json') 
           , 'angular2-template-loader'
        ]
      ,
      
        test: /\.html$/,
        loader: 'html-loader'
      ,
      
        test: /\.(png|jpe?g|gif|svg|woff|woff2|ttf|eot|ico)$/,
        loader: 'file-loader?name=assets/[name].[hash].[ext]'
      ,
      
        test: /\.css$/,
        exclude: helpers.root('src', 'app'),
        loader: ExtractTextPlugin.extract( fallbackLoader: 'style-loader', loader: 'css-loader?sourceMap' )
      ,
      
        test: /\.css$/,
        include: helpers.root('src', 'app'),
        loader: 'raw-loader'
      
    ]
  ,

  plugins: [
    // Workaround for angular/angular#11580
    new webpack.ContextReplacementPlugin(
      // The (\\|\/) piece accounts for path separators in *nix and Windows
      /angular(\\|\/)core(\\|\/)@angular/,
      helpers.root('./src'), // location of your src
       // a map of your routes
    ),

    new webpack.optimize.CommonsChunkPlugin(
      name: ['app', 'vendor', 'polyfills']
    ),

    new HtmlWebpackPlugin(
      template: 'src/index.html'
    )
  ]
;

webpack.dev.js

var webpackMerge = require('webpack-merge');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
var commonConfig = require('./webpack.common.js');
var helpers = require('./helpers');

module.exports = webpackMerge(commonConfig, 
  devtool: 'cheap-module-eval-source-map',

  output: 
    path: helpers.root('dist'),
    publicPath: '/',
    filename: '[name].js',
    chunkFilename: '[id].chunk.js'
  ,

  plugins: [
    new ExtractTextPlugin('[name].css')
  ],

  devServer: 
    historyApiFallback: true,
    stats: 'minimal'
  
);

webpack.prod.js

var webpack = require('webpack');
var webpackMerge = require('webpack-merge');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
var commonConfig = require('./webpack.common.js');
var helpers = require('./helpers');

const ENV = process.env.NODE_ENV = process.env.ENV = 'production';

module.exports = webpackMerge(commonConfig, 
  devtool: 'source-map',

  output: 
    path: helpers.root('dist'),
    publicPath: '/',
    filename: '[name].[hash].js',
    chunkFilename: '[id].[hash].chunk.js'
  ,

  plugins: [
    new webpack.NoEmitOnErrorsPlugin(),
    new webpack.optimize.UglifyJsPlugin( // https://github.com/angular/angular/issues/10618
      mangle: 
        keep_fnames: true
      
    ),
    new ExtractTextPlugin('[name].[hash].css'),
    new webpack.DefinePlugin(
      'process.env': 
        'ENV': JSON.stringify(ENV)
      
    ),
    new webpack.LoaderOptionsPlugin(
      htmlLoader: 
        minimize: false // workaround for ng2
      
    )
  ]
);

这是错误

0 信息如果它以 ok 1 详细 cli [ 'C:\Program Files\nodejs\node.exe', 1 详细的 cli 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js',1 个详细的 cli 'start' ] 2 使用 npm@5.5.1 的信息 3 使用 node@v8.9.1 的信息 4 详细 运行脚本 ['prestart', 'start', 'poststart'] 5 信息生命周期 angular-io-example@1.0.0~prestart: angular-io-example@1.0.0 6 信息 生命周期 angular-io-example@1.0.0~start: angular-io-example@1.0.0 7 详细的生命周期 angular-io-example@1.0.0~start: unsafe-perm in 生命周期 true 8 详细生命周期 angular-io-example@1.0.0~start: 路径:C:\程序 Files\nodejs\node_modules\npm\bin\node-gyp-bin;C:\Users\cbonsu\Downloads\sample_pro\webpack\node_modules.bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\ System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program 文件\Microsoft SQL Server\130\Tools\Binn\;C:\Program 文件\Git\cmd;C:\Program Files (x86)\Microsoft SQL 服务器\130\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL 服务器\130\DTS\Binn\;C:\Program Files\Microsoft SQL 服务器\130\DTS\Binn\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\130\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL 服务器\客户端 SDK\ODBC\130\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL 服务器\130\Tools\Binn\ManagementStudio\;C:\WINDOWS\system32\config\systemprofile.dnx\bin;C:\Program 文件\Microsoft DNX\Dnvm\;C:\Program Files\Microsoft\Web 平台 安装程序\;C:\Program Files\dotnet\;C:\Program 文件\nodejs\;C:\Users\cbonsu\AppData\Local\Microsoft\WindowsApps;C:\Program 文件\nodejs;C:\Program Files\Microsoft VS Code\bin;C:\Users\cbonsu\AppData\Roaming\npm 9 详细生命周期 angular-io-example@1.0.0~start: CWD: C:\Users\cbonsu\Downloads\sample_pro\webpack 10 傻傻的生命周期 angular-io-example@1.0.0~start: Args: [ '/d /s /c', 10 傻生命周期 'webpack-dev-server --inline --progress --port 8080' ] 11 傻 生命周期 angular-io-example@1.0.0~start:返回:代码:1 信号: null 12 info 生命周期 angular-io-example@1.0.0~start: 执行失败 启动脚本 13 详细堆栈错误:angular-io-example@1.0.0 启动: webpack-dev-server --inline --progress --port 8080 13 详细堆栈 退出状态 1 13 EventEmitter 的详细堆栈。 (C:\程序 文件\nodejs\node_modules\npm\node_modules\npm-lifecycle\index.js:280:16) 在 emitTwo (events.js:126:13) 上的 13 个详细堆栈 13 个详细堆栈 在 EventEmitter.emit (events.js:214:7) 13 详细堆栈 子进程。 (C:\程序 文件\nodejs\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.js:55:14) 在 emitTwo (events.js:126:13) 上的 13 个详细堆栈 13 个详细堆栈 在 ChildProcess.emit (events.js:214:7) 13 详细堆栈 MaybeClose (internal/child_process.js:925:16) 13 详细堆栈位于 Process.ChildProcess._handle.onexit (internal/child_process.js:209:5) 14 详细 pkgid angular-io-example@1.0.0 15 详细 cwd C:\Users\cbonsu\Downloads\sample_pro\webpack 16 详细 Windows_NT 10.0.15063 17 详细 argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" “开始” 18 详细节点 v8.9.1 19 详细 npm v5.5.1 20 错误代码 ELIFECYCLE 21 错误 errno 1 22 错误 angular-io-example@1.0.0 开始: webpack-dev-server --inline --progress --port 8080 22 错误退出 状态 1 23 错误在 angular-io-example@1.0.0 启动脚本中失败。 23 错误 这可能不是 npm 的问题。有可能 上面的附加日志输出。 24 详细退出 [1, true]

【问题讨论】:

你能分享你的webpack.config.js文件吗 我现在已经和webpack.common.js、webpack.dev.js和webpack.prod.js一起分享了 【参考方案1】:

要修复依赖关系树,请尝试按确切顺序执行以下步骤:

    删除项目文件夹中的 package-lock.json(不是 package.json!)和/或 yarn.lock。 删除项目文件夹中的 node_modules。 从项目文件夹的 package.json 文件中的依赖项和/或 devDependencies 中删除“webpack-dev-server”。 运行 npm install 或 yarn,具体取决于您使用的包管理器。

【讨论】:

【参考方案2】:

如果 npm clean cache --force npm install npm start 不适合你。尝试重命名根文件夹。这对我来说非常有用。

【讨论】:

【参考方案3】:

应该会成功的

npm cache clean --force

npm install

npm start 

【讨论】:

npm 清理缓存不起作用。它返回可用的 npm 使用命令。 npm cache clean 返回此“从 npm@5 开始,npm 缓存从损坏问题中自我修复,并且从缓存中提取的数据保证是有效的。如果你想确保一切都是一致的,请改用'npm cache verify'”。我尝试了消息中所述的“npm cache verify”,然后是“npm start”,但问题仍然存在。 尝试:npm cache clean --force 不,我没有先删除 node_modules ......我现在已经删除了 node_modules 并重新运行命令“npm clean cache --force”、“npm install”,最后是“npm开始”。问题依然存在。 这确实有效,我在 react native 中遇到了类似的问题,这很有效,谢谢【参考方案4】:

我只是通过验证和清理缓存解决了这个问题,然后将 npm 更新到最新版本。

npm cache verify
npm install
npm start

【讨论】:

【参考方案5】:

我发现了一种更简单的方法。完全放弃“npm start”和 webpack 方法并使用 angular-cli。使用 angular-cli,调用“ng build --prod”可以处理所有事情(aot 等)。它在幕后使用 webpack,但它处理了所有涉及的复杂问题,因此开发人员不必这样做。

【讨论】:

以上是关于执行启动脚本失败的主要内容,如果未能解决你的问题,请参考以下文章

jenkins自动发布后启动tomcat失败

如果连续ping失败则启动traceroute的脚本,输出到日志

在计算机启动时运行 powershell 网络脚本将失败

shell脚本启动语法错误syntax error near unexpected token '{

server@1.0.0 启动脚本失败

linux下通过cron启动firefox失败