找不到入口模块中的错误:错误:无法解析“xxxx”中的“xxxx”解析“xxxx”

Posted

技术标签:

【中文标题】找不到入口模块中的错误:错误:无法解析“xxxx”中的“xxxx”解析“xxxx”【英文标题】:ERROR in Entry module not found: Error: Can't resolve ‘xxxx’ in ‘xxxx’ resolve ‘xxxx’ 【发布时间】:2019-02-19 08:40:45 【问题描述】:

我看到了类似的问题,但找不到适合我的解决方案,可能是因为我的 webpack.config.js 不同。 需要注意的重要一点是,我只在 MacOS 上在 webpack.config.js 所在文件夹的根目录上执行“webpack --display-error-details”时遇到此问题。

Full source code here

webpack.config.js

/// <binding BeforeBuild='Run - Development' />
var webpack = require('webpack');
var path = require('path');

var buildDir = path.resolve(__dirname, './wwwroot/scripts');
var scriptsDir = path.resolve(__dirname, './wwwroot/libs/tsxbuild');

var config = 
    entry: 
        index: scriptsDir + '/home' + '/index',
        "sales/salesorder": scriptsDir + '/sales/salesorder',
        "quotations/salesquotation": scriptsDir + '/quotations/salesquotation',
        "sales/salesinvoice": scriptsDir + '/sales/salesinvoice',
        "purchasing/purchaseorder": scriptsDir + '/purchasing/purchaseorder',
        "purchasing/purchaseinvoice": scriptsDir + '/purchasing/purchaseinvoice',
        "financials/journalentry": scriptsDir + '/financials/journalentry',
        vendor: ['react', 'react-dom']
    ,
    output: 
        path: buildDir,
        filename: '[name].chunk.js'
    ,
    optimization: 
        splitChunks: 
            cacheGroups: 
                commons: 
                    test: /[\\/]node_modules[\\/]/,
                    name: 'vendor',
                    chunks: 'all'
                
            
        
    ,
    resolve: 
        extensions: ['.js', '.jsx', '.tsx']
    ,
    devtool: 'source-map',
    plugins: [
        new webpack.ProvidePlugin(
            $: 'jquery',
            jQuery: 'jquery',
            'window.jQuery': 'jquery',
            Popper: ['popper.js', 'default']
        )
    ],
    externals: 
        'Config': JSON.stringify(process.env.ENV === 'production' ?
            
                apiUrl: "https://accountgoapi.azurewebsites.net/"
                //apiUrl: "http://localhost:5000/"
             :
            
                apiUrl: "https://accountgoapi.azurewebsites.net/"
                //apiUrl: "http://localhost:5000/"
            )
    
;

module.exports = config;

package.json


  "version": "0.0.1",
  "name": "accountgoweb",
  "private": true,
  "devDependencies": 
    "gulp": "^3.9.1",
    "mobx-react-devtools": "4.2.15",
    "ts-loader": "3.5.0",
    "tsd": "0.6.5",
    "typescript": "2.7.1",
    "webpack": "^4.19.0",
    "webpack-cli": "^3.1.0"
  ,
  "dependencies": 
    "axios": "0.17.1",
    "bootstrap": "4.0.0",
    "popper.js": "1.12.9",
    "jquery": "3.3.1",
    "mobx": "3.5.1",
    "mobx-react": "4.4.1",
    "react": "16.2.0",
    "react-dom": "16.2.0",
    "d3": "4.13.0",
    "react-router": "4.2.0",
    "ag-grid": "16.0.1",
    "ag-grid-react": "16.0.0",
    "react-dom-factories": "1.0.2",
    "knockout-mapping": "2.6.0",
    "knockout": "3.5.0-beta",
    "accounting": "0.4.1",
    "jspdf": "1.3.5",
    "html2canvas": "1.0.0-alpha.9"
  

完全错误

找不到入口模块中的错误:错误:无法解决 '/Users/Marvs/source/accountgo/src/AccountGoWeb/wwwroot/libs/tsxbuild/sales/salesinvoice' 在“/Users/Marvs/source/accountgo/src/AccountGoWeb”中解决 '/Users/Marvs/source/accountgo/src/AccountGoWeb/wwwroot/libs/tsxbuild/sales/salesinvoice' 在“/Users/Marvs/source/accountgo/src/AccountGoWeb”中使用 描述文件: /Users/Marvs/source/accountgo/src/AccountGoWeb/package.json(相对 小路: 。) 字段“浏览器”不包含有效的别名配置 使用描述文件:/Users/Marvs/source/accountgo/src/AccountGoWeb/package.json(相对 路径:./wwwroot/libs/tsxbuild/sales/salesinvoice) 没有扩展 字段“浏览器”不包含有效的别名配置 /Users/Marvs/source/accountgo/src/AccountGoWeb/wwwroot/libs/tsxbuild/sales/salesinvoice 不存在 .js 字段“浏览器”不包含有效的别名配置 /Users/Marvs/source/accountgo/src/AccountGoWeb/wwwroot/libs/tsxbuild/sales/salesinvoice.js 不存在 .jsx 字段“浏览器”不包含有效的别名配置 /Users/Marvs/source/accountgo/src/AccountGoWeb/wwwroot/libs/tsxbuild/sales/salesinvoice.jsx 不存在 .tsx 字段“浏览器”不包含有效的别名配置 /Users/Marvs/source/accountgo/src/AccountGoWeb/wwwroot/libs/tsxbuild/sales/salesinvoice.tsx 不存在 作为目录 /Users/Marvs/source/accountgo/src/AccountGoWeb/wwwroot/libs/tsxbuild/sales/salesinvoice 不存在

找不到入口模块中的错误:错误:无法解决 '/Users/Marvs/source/accountgo/src/AccountGoWeb/wwwroot/libs/tsxbuild/sales/salesorder' 在“/Users/Marvs/source/accountgo/src/AccountGoWeb”中解决 '/Users/Marvs/source/accountgo/src/AccountGoWeb/wwwroot/libs/tsxbuild/sales/salesorder' 在“/Users/Marvs/source/accountgo/src/AccountGoWeb”中使用 描述文件: /Users/Marvs/source/accountgo/src/AccountGoWeb/package.json(相对 小路: 。) 字段“浏览器”不包含有效的别名配置 使用描述文件:/Users/Marvs/source/accountgo/src/AccountGoWeb/package.json(相对 路径:./wwwroot/libs/tsxbuild/sales/salesorder) 没有扩展 字段“浏览器”不包含有效的别名配置 /Users/Marvs/source/accountgo/src/AccountGoWeb/wwwroot/libs/tsxbuild/sales/salesorder 不存在 .js 字段“浏览器”不包含有效的别名配置 /Users/Marvs/source/accountgo/src/AccountGoWeb/wwwroot/libs/tsxbuild/sales/salesorder.js 不存在 .jsx 字段“浏览器”不包含有效的别名配置 /Users/Marvs/source/accountgo/src/AccountGoWeb/wwwroot/libs/tsxbuild/sales/salesorder.jsx 不存在 .tsx 字段“浏览器”不包含有效的别名配置 /Users/Marvs/source/accountgo/src/AccountGoWeb/wwwroot/libs/tsxbuild/sales/salesorder.tsx 不存在 作为目录 /Users/Marvs/source/accountgo/src/AccountGoWeb/wwwroot/libs/tsxbuild/sales/salesorder 不存在

【问题讨论】:

buildDirscriptsDir 变量中,尝试删除路径开头的. 【参考方案1】:

我找到了解决方案。 tsx 文件必须先转换为 js 并移动到 tsxbuild 文件夹。我认为 webpack(我没有 webpack 经验)会为我做这个转换。但是文件的移动由 tsconfig.json 处理。需要先安装 typescript,然后在 tsconfig.json 所在的文件夹上运行“tsc”。现在 webpack 命令可以工作了。

【讨论】:

以上是关于找不到入口模块中的错误:错误:无法解析“xxxx”中的“xxxx”解析“xxxx”的主要内容,如果未能解决你的问题,请参考以下文章

找不到模块:错误:无法解析模块“fs”

未找到入口模块中的错误 - 在 Webpack 配置文件中

找不到模块:错误:无法解析“/app/node_modules/next/dist/lib”中的“pnpapi”

Webpack 4:找不到Entry模块中的ERROR:错误:无法解析'./src'

在 src/app 外部定义的模块显示错误“找不到模块:错误:无法解析 './' in”

找不到模块:错误:无法解析模块“路由”