尝试使用 Windows 7 为 Symfony2 项目转储资产时出现运行时异常
Posted
技术标签:
【中文标题】尝试使用 Windows 7 为 Symfony2 项目转储资产时出现运行时异常【英文标题】:Runtime exception when trying to dump assetic for Symfony2 project using Windows 7 【发布时间】:2015-03-31 21:53:01 【问题描述】:我使用的是Windows平台(请不要笑我)。我正在尝试在运行 Windows 7 的本地计算机中使用asseti 构建一个 Symfony2 项目。
现在我无法为我生命中的挚爱弄清楚为什么它没有转储资产文件。它总是说某种运行时异常。我认为这与咖啡箱和节点路径有关。这是为咖啡箱和节点设置路径的正确方法吗?
framework:
[...]
# Twig Configuration
twig:
[...]
# Assetic Configuration
assetic:
debug: "%kernel.debug%"
use_controller: true
bundles: [...]
filters:
sass:
load_paths: [ "%kernel.root_dir%/../src/xxxxx/WebsiteBundle/Resources/public/vendor/" ]
compass: true
coffee:
bin: C:\Users\xxxxx\AppData\Roaming\npm\coffee
node: C:\Program Files\nodejs\node
cs-s-rewrite: ~
# Doctrine Configuration
[...]
php composer.phar
安装工作正常
php app/console asset:install
工作正常
php app/console assetic:dump
给我以下错误:
[运行时异常]
无法写入文件 C:/xampp/htdocs/xxxxx/app/../web/js/3b27a3f_js?key=AIzaSyCk9Cxgv09X9DKar1bcsLAXxlqP3YhF0OI_1.js
我最初的感觉是咖啡箱和节点路径有问题。
下面是我机器中的位置。
我不知道发生了什么。我将向您转储任何可能有助于解决此问题的输出。我在这里感觉很无语。我正在使用 SASS、指南针、咖啡等。
【问题讨论】:
我的同事最近遇到了类似的问题,尝试以管理员身份运行cmd
(我没有windows)
我一直在 Windows 中以管理员身份运行这些。没有效果。
能否请您复制粘贴错误信息以替换图像?当 Symfony2 尝试创建 .../3b27a3f_js?key=AIzaSyC...
文件时出现错误,这不是一个有效的文件名。
将 -v 选项 (--verbose) 添加到转储命令。它将显示堆栈跟踪。
【参考方案1】:
Symfony2 与 Assetic 的集成
1.文件config.yml
# Assetic Configuration
assetic:
debug: "%kernel.debug%"
use_controller: false
bundles: [ ]
#java: /usr/bin/java
filters:
cs-s-rewrite: ~
less:
node: "C:\\Program Files (x86)\\nodejs\\node.exe"
node_paths: ["C:\\Users\\websky\\AppData\\Roaming\\npm\\node_modules"]
apply_to: "\.less$"
yui_css:
jar: %kernel.root_dir%/../java/yuicompressor-2.4.6.jar
yui_js:
jar: %kernel.root_dir%/../java/yuicompressor-2.4.6.jar
#closure:
# jar: "%kernel.root_dir%/Resources/java/compiler.jar"
2. 文件 base.html.twig
<head>
% stylesheets filter='less,?yui_css' '@AcmeBundle/Resources/less/main.less' %
<link href=" asset_url " rel="stylesheet" media="screen" />
% endstylesheets %
</head>
3.构建资产
php app/console assetic:dump --env=prod
有用的链接: Less Windows Node.js Hanging
【讨论】:
【参考方案2】:试试这个
coffee:
bin: "C:\\Users\\xxxxx\\AppData\\Roaming\\npm\\coffee"
node: "C:\\Program Files\\nodejs\\node"
我在 node.js 上遇到了完全相同的问题。如果这不起作用,请尝试指向确切的 .exe 路径。 Windows 似乎有各种各样的麻烦。
祝你好运
【讨论】:
`咖啡:bin:“C:\\Users\\bhatt_000\\AppData\\Roaming\\coffee.cmd”节点:“C:\\Ruby193\\node\\node.exe “`我试过这个。它不起作用。同样的错误以上是关于尝试使用 Windows 7 为 Symfony2 项目转储资产时出现运行时异常的主要内容,如果未能解决你的问题,请参考以下文章
如何让 Assetic + sass 在 Windows 中与 Symfony2 一起工作?
Symfony2 2.3.7 -Doctrine 2.4.1:ManyToMany 关系未保存到数据库