title: webpack fail misteriously on Linux: cannot find module
body: <p>I'm using webpack for bundling react app. Everything works find on my Windows machine. But when I try to run it in the Linux server (centos 6.5) . I got following error: </p>
  
  <pre><code>[root@xxxxx]# webpack
  module.js:457
      throw err;
      ^
  
  Error: Cannot find module './Parser.js'
      at Function.Module._resolveFilename (module.js:455:15)
      at Function.Module._load (module.js:403:25)
      at Module.require (module.js:483:17)
      at require (internal/module.js:20:19)
      at Object.&lt;anonymous&gt; (path/to/web/node_modules/htmlparser2/lib/index.js:1:76)
      at Module._compile (module.js:556:32)
      at Object.Module._extensions..js (module.js:565:10)
      at Module.load (module.js:473:32)
      at tryModuleLoad (module.js:432:12)
      at Function.Module._load (module.js:424:3)
      at Module.require (module.js:483:17)
      at require (internal/module.js:20:19)
      at Object.&lt;anonymous&gt; (/path/to/web/node_modules/renderkid/lib/tools.js:4:14)
      at Module._compile (module.js:556:32)
      at Object.Module._extensions..js (module.js:565:10)
      at Module.load (module.js:473:32)
  </code></pre>
  
  <p>here is my webpack configure file: </p>
  
  <pre><code>const path = require('path');
  const HtmlWebpackPlugin = require('html-webpack-plugin');
  const merge = require('webpack-merge');
  const validate = require('webpack-validator');
  const parts = require('./libs/parts');
  const PATHS = {
      app:path.resolve(__dirname,'shared'),
      build:path.resolve(__dirname,'build'),
      css:[
          //path.join(__dirname,'node_modules','purecss'),
          //path.join(__dirname,'client','client.less'),
          path.join(__dirname,'client','client.less')
      ]
  };
  
  const common = {
      entry:{
          app:PATHS.app,
          style:PATHS.css
      },
      output:{
          path:PATHS.build,
          filename:'[name].js',
      },
      resolve: {
          extensions: ['', '.js', '.jsx'],
      },
      resolveLoader: {
          root: path.join(__dirname, 'node_modules')
      }
  };
  var config;
  switch (process.env.npm_lifecycle_event) {
      case "build":
          config = merge(common,
              {
                  devtool: 'cheap-module-source-map',
                  //stats: 'errors-only',
                  output: {
                      path: PATHS.build,
                      filename: '[name].js',
                      // This is used for require.ensure. The setup
                      // will work without but this is useful to set.
                      chunkFilename: '[chunkhash].js'
                  }
              },
              parts.clean(PATHS.build),
              parts.setFreeVariable(
                  'process.env.NODE_ENV',
                  'production'
              ),
              parts.supportESSix(PATHS.app),
              parts.extractBundle({
                  name: 'vendor',
                  entries: ['react','react-dom','react-router','react-addons-pure-render-mixin',
                      'redux','react-redux','immutable',"redux-thunk","superagent","draft-js","react-dropzone","react-modal"]
              }),
  
              parts.purifyCSS(PATHS.css),
              parts.setupLess(PATHS.css),
              parts.minify(),
              parts.compressBundle()
  
          );
          break;
      default:
          config = merge(common,
              {
                  devtool: 'source-map',
                  //stats: 'errors-only',
                  output: {
                      path: PATHS.build,
                      filename: '[name].js',
                      // This is used for require.ensure. The setup
                      // will work without but this is useful to set.
                      chunkFilename: '[chunkhash].js'
                  }
              },
              parts.clean(PATHS.build),
              parts.setFreeVariable(
                  'process.env.NODE_ENV',
                  'production'
              ),
              parts.supportESSix(PATHS.app),
              parts.extractBundle({
                  name: 'vendor',
                  entries: ['react','react-dom','react-router','react-addons-pure-render-mixin',
                      'redux','react-redux','immutable',"redux-thunk","superagent","draft-js","react-dropzone","react-modal"]
              }),
  
              parts.purifyCSS(PATHS.css),
              parts.setupLess(PATHS.css),
              parts.minify()
          );
  }
  
  module.exports = validate(config);
  </code></pre>
  
  <p>and finally, the package.json file : </p>
  
  <pre><code>{
    "name": "bravo",
    "version": "1.0.0",
    "description": "",
    "main": "index.js",
    "scripts": {
      "test": "echo \"Error: no test specified\" &amp;&amp; exit 1",
      "build": "webpack",
      "start": "webpack-dev-server"
    },
    "keywords": [],
    "author": "",
    "license": "ISC",
    "devDependencies": {
      "bootstrap": "^3.3.7",
      "clean-webpack-plugin": "^0.1.10",
      "compression-webpack-plugin": "^0.3.1",
      "css-loader": "^0.24.0",
      "extract-text-webpack-plugin": "^1.0.1",
      "file-loader": "^0.9.0",
      "html-webpack-plugin": "^2.22.0",
      "less": "^2.7.1",
      "less-loader": "^2.2.3",
      "purecss": "^0.6.0",
      "purifycss-webpack-plugin": "^2.0.3",
      "semantic-ui": "^2.2.4",
      "semantic-ui-less": "^2.2.4",
      "style-loader": "^0.13.1",
      "url-loader": "^0.5.7",
      "webpack": "^1.13.2",
      "webpack-dev-server": "^1.15.0",
      "webpack-merge": "^0.14.1",
      "webpack-validator": "^2.2.7"
    },
    "dependencies": {
      "babel-core": "^6.14.0",
      "babel-loader": "^6.2.5",
      "babel-preset-es2015": "^6.14.0",
      "babel-preset-react": "^6.11.1",
      "body-parser": "^1.15.2",
      "compress": "^0.99.0",
      "cookie-parser": "^1.4.3",
      "csurf": "^1.9.0",
      "draft-js": "^0.9.1",
      "es6-promise": "^3.2.1",
      "express": "^4.14.0",
      "express-jwt": "^5.0.0",
      "express-session": "^1.14.1",
      "form-data": "^2.0.0",
      "history": "^3.2.1",
      "immutable": "^3.8.1",
      "isomorphic-fetch": "^2.2.1",
      "jsonwebtoken": "^7.1.9",
      "method-override": "^2.3.6",
      "mongoose": "^4.6.0",
      "passport": "^0.3.2",
      "passport-facebook": "^2.1.1",
      "password-hash": "^1.2.2",
      "q": "^1.4.1",
      "react": "^15.3.2",
      "react-addons-pure-render-mixin": "^15.3.1",
      "react-dom": "^15.3.1",
      "react-dropzone": "^3.6.0",
      "react-modal": "^1.5.2",
      "react-redux": "^4.4.5",
      "react-router": "^2.7.0",
      "redux": "^3.6.0",
      "redux-immutable": "^3.0.8",
      "redux-thunk": "^2.1.0",
      "sanitize-html": "^1.13.0",
      "superagent": "^2.3.0"
    },
  
    "babel": {
      "presets": [
        "es2015",
        "react"
      ]
    }
  }
  </code></pre>
  
  <p>please point me out why I could not make it run on linux ? is there any platform specific problem that I should be aware of? </p>