Hi everyone,
I’m trying to use Cesium 1.31.0 in my React project using webpack but I keep getting the same error:
Project is running at http://localhost:8080/
webpack output is served from /
Content not from webpack is served from C:\projects\Web Network Analysis\public\src
Hash: 94a02afbd667b1bea74c
Version: webpack 2.2.1
Time: 3694ms
Asset Size Chunks Chunk Names
client.min.js 3.17 MB 0 [emitted] [big] main
chunk {0} client.min.js (main) 1.15 MB [entry] [rendered]
[10] ./~/react/react.js 56 bytes {0} [built]
[122] ./~/react-router/es/index.js 1.46 kB {0} [built]
[144] (webpack)/hot/emitter.js 77 bytes {0} [built]
[145] ./js/client.js 940 bytes {0} [built]
[146] (webpack)-dev-server/client?http://localhost:8080 5.28 kB {0} [built]
[147] (webpack)/hot/dev-server.js 1.57 kB {0} [built]
[150] ./js/pages/Layout.js 2.36 kB {0} [built]
[151] ./js/pages/MapPage.js 2.68 kB {0} [built]
[181] ./~/react-dom/index.js 59 bytes {0} [built]
[317] ./~/strip-ansi/index.js 161 bytes {0} [built]
[319] ./~/url/url.js 23.3 kB {0} [built]
[321] (webpack)-dev-server/client/overlay.js 3.6 kB {0} [built]
[322] (webpack)-dev-server/client/socket.js 856 bytes {0} [built]
[324] (webpack)/hot/log-apply-result.js 1.02 kB {0} [built]
[325] multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server …/js/client.js 52 bytes {0} [built]
- 311 hidden modules
WARNING in ./~/cesium/index.js
11:35-42 Critical dependency: require function is used in a way in which dependencies cannot be statically extracted
ERROR in ./~/requirejs/bin/r.js
Module parse failed: C:\projects\Web Network Analysis\public\node_modules\requirejs\bin\r.js Unexpected character ‘#’ (1:0)
You may need an appropriate loader to handle this file type.
#!/usr/bin/env node
/**
- @license r.js 2.3.3 Copyright jQuery Foundation and other contributors.
@ ./~/cesium/index.js 5:16-36
@ ./js/pages/MapPage.js
@ ./js/client.js
@ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server …/js/client.js
webpack: Failed to compile.
This is my webpack.config.js:
var debug = process.env.NODE_ENV !== “production”;
var webpack = require(‘webpack’);
var path = require(‘path’);
module.exports = {
context: path.join(__dirname, “src”),
devtool: debug ? “inline-sourcemap” : null,
entry: “…/js/client.js”,
module: {
unknownContextCritical: false,
//unknownContextRegExp: /^./.*$/,
loaders: [
{ test: /.css$/, loader: “style!css” },
{
test: /.(png|gif|jpg|jpeg)$/,
loader: ‘file-loader’
},
{
test: /.js?$/,
exclude: /(node_modules|bower_components)/,
loader: ‘babel-loader’,
query: {
presets: [‘react’, ‘es2015’, ‘stage-0’],
plugins: [‘react-html-attrs’, ‘transform-decorators-legacy’, ‘transform-class-properties’],
}
}
]
},
output: {
path: __dirname + “/src/”,
filename: “client.min.js”,
sourcePrefix : ‘’
},
plugins: debug ? : [
new webpack.optimize.DedupePlugin(),
new webpack.optimize.OccurenceOrderPlugin(),
new webpack.optimize.UglifyJsPlugin({ mangle: false, sourcemap: false }),
//new webpack.ContextReplacementPlugin(/moment-jdateformatparser/, /moment-jdateformatparser.js/),
],
};
I have implemented the fixes suggested in this post: Fix remaining issues that require special Webpack configuration settings? · Issue #4876 · CesiumGS/cesium · GitHub but the error keeps occuring. I have also executed the steps under “I’ve already got webpack set up, just tell me how to use Cesium” in this link: https://cesiumjs.org/2016/01/26/Cesium-and-Webpack/ still the error persists.
Does any of you know how to remedy this issue? Thanks in advance!