我正努力在Core2.0 web应用程序中进行捆绑工作。我的bundleconfig.json文件中有以下内容:
[
{
"outputFileName": "wwwroot/css/site.min.css",
"inputFiles": [
"wwwroot/css/site.css"
]
},
{
"outputFileName": "wwwroot/css/bootstrap.min.css",
"inputFiles": [
"wwwroot/lib/bootstrap/dist/css/bootstrap.css",
]
},
{
"outputFileName": "wwwroot/css/jquery-datatables.min.css",
"inputFiles": [
"wwwroot/lib/jquery/jquery-datatables/datatables.css",
"wwwroot/lib/jquery/jquery-datatables/Responsive-2.2.1/css/responsive.dataTables.css"
]
},
{
"outputFileName": "wwwroot/js/site.min.js",
"inputFiles": [
"wwwroot/js/site.js"
],
"minify": {
"enabled": true,
"renameLocals": true
},
"sourceMap": false
},
{
"outputFileName": "wwwroot/js/jquery.min.js",
"inputFiles": [
"wwwroot/lib/jquery/dist/jquery.js",
],
"minify": {
"enabled": true,
"renameLocals": true
},
"sourceMap": false
},
{
"outputFileName": "wwwroot/js/bootstrap.min.js",
"inputFiles": [
"wwwroot/lib/bootstrap/dist/js/bootstrap.js"
],
"minify": {
"enabled": true,
"renameLocals": true
},
"sourceMap": false
},
{
"outputFileName": "wwwroot/js/jquery-datatables.min.js",
"inputFiles": [
"wwwroot/lib/jquery/jquery-datatables/datatables.js",
"wwwroot/lib/jquery/jquery-datatables/Responsive-2.2.1/js/dataTables.responsive.js"
],
"minify": {
"enabled": true,
"renameLocals": true
},
"sourceMap": false
}
]我安装了BuildBundlerMinifier NugGet包。在构建项目时,我会看到正在处理的bundleconfig.json文件。
我在_Layout.cshtml中添加了以下内容
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<environment include="Development,Staging,Production">
<link rel="stylesheet" href="~/wwwroot/css/site.min.css" />
<link rel="stylesheet" href="~/wwwroot/css/bootstrap.min.css" />
<link rel="stylesheet" href="~/wwwroot/css/jquery-datatables.min.css" />
</environment>
</head>
<body>
<environment include="Development,Staging,Production">
<script src="~/wwwroot/js/site.min.js"></script>
<script src="~/wwwroot/js/jquery.min.js"></script>
<script src="~/wwwroot/js/bootstrap.min.js"></script>
<script src="~/wwwroot/js/jquery-datatables.min.js"></script>
</environment>
@RenderSection("Scripts", required: true)
</body>当我运行应用程序时,没有加载资源。我得到以下错误:
对于源“
<script>”的https://localhost:44301/wwwroot/js/site.min.js,加载失败。 对于源“<script>”的https://localhost:44301/wwwroot/js/jquery.min.js,加载失败。 对于源“<script>”的https://localhost:44301/wwwroot/js/bootstrap.min.js,加载失败。 源“<script>”的https://localhost:44301/wwwroot/js/jquery-datatables.min.js加载失败
有人能帮帮我吗?
发布于 2018-02-10 13:21:07
您必须删除urls中的"wwwroot“部分。"wwwroot“是运行应用程序的根文件夹。现在它将搜索“.wwwroot/wwwroot/js.”中的文件。而不是“.www.root/js.”。
发布于 2019-01-29 09:39:31
我厌倦了Nuget软件包管理器,但它没有工作,然后卸载它,
通过以下方式解决了问题:
打开Nuget包管理器控制台,
Install-Package BuildBundlerMinifier -Version 2.8.391 重新构建解决方案。对我来说很管用。
发布于 2018-04-24 17:54:08
我无法做到这一点,并了解到,目前的问题还有更多。
默认情况下,dotnet核心剃须刀页面项目中没有任何捆绑和缩小的东西。
据说,您可以通过右键单击Visual解决方案资源管理器中的bundleconfig.json来检查您的设置.但这在我的项目中什么都没有显示出来。
我终于找到了一个Visual外接程序。
打包机和小型化器--手动
相反,我安装了一个手动的邦德勒和迷你机--它是由同样的作者()和上面的Nuget pkg编写的。https://marketplace.visualstudio.com/items?itemName=MadsKristensen.BundlerMinifier
这是一个Visual扩展,在安装它之后,您可以右键单击任何css或js文件,您将得到允许您“手动”缩小它们的菜单。

在build.上启用包
该选项将警告您,它将安装Nuget软件包。我还没那么做呢。
我还取消选中该选项,生成输出文件,然后再次选择它(已选中),当我这样做时,在我的解决方案中创建了另一个名为bundleconfig.json bundleconfig.json.bindings.的文件该文件只包含一行:
produceoutput=true奇怪的是它以前不在那里。我知道以前不存在该文件,因为git告诉我有一些未跟踪的文件,并提到了该文件。
为了测试工作室中是否有问题,我创建了一个全新的DotNetCore2.xRazorPages项目,然后立即删除了min.css,并尝试重新构建它,但是它再也没有构建过了。
在添加了.bindings文件之后,更新我重新构建的所有Bundles,但是包仍然没有构建。然后我注意到我在Build菜单下还有另一个选项,但我不确定这是否是我安装的捆绑和缩小插件,所以在寻找这个解决方案时,您必须考虑这一点。

您还可以在Visual Tools...Options中检查您的设置。菜单:

您可以看到,在我的项目中,Bundler & Minifier将选项设置为true (尽管它仍然不起作用)。
实际上,我更仔细地阅读了最后一句,我注意到它写着,“积极地倾听输入文件的更改”,所以我去修改了我的site.css,并注意到site.css中确实更新了这个值。
做了一个改变,把它变回
奇怪的是,如果您删除了site.min.css,那么它似乎在任何时候都不会重新生成。现在,如果您这样做,您可以进行更改并将其更改回,则会创建min文件。
我对此进行了测试:删除了site.min.css,然后进行了更改,文件再次被gen处理。奇怪的是,构建没有启动这个功能。
https://stackoverflow.com/questions/48720712
复制相似问题