2013-07-29 4 views
6

У меня есть файл в C: \ Bin \ test.js, что я хотел бы, чтобы сжать и переименовал тесты-min.jsмуравей + yuicompressor ошибка пути

моего муравей сборки. XML выглядит следующим образом:

<property name="temp.dir" value="C:\Bin\"/> 

<apply executable="java" parallel="false" dest="${temp.dir}"> 
    <fileset dir="${temp.dir}" includes="test.js"/> 
    <arg line="-jar"/> 
    <arg path="${yui.dir}"/> 
    <srcfile/> 
    <arg line="-o"/> 
    <mapper type="glob" from="*.js" to="*-min.js"/> 
    <targetfile/> 
</apply> 

Я получаю следующее сообщение об ошибке: Java

[применить] java.io.FileNotFoundException: Bintest-min.js: \ Bin \ test.js (Неверное имя синтаксиса имени файла, каталога или тома)

Я пробовал каждую комбинацию путей и имен файлов, которые я мог бы придумать. Что мне не хватает? Похоже, что он удаляет C: \ и второй \

И я знаю, что YUI работает, потому что я могу сделать это вручную из командной строки.

+0

Идите прямо к этому ответу http://stackoverflow.com/a/19339287/672455 Принятая ответ не делает ничего хорошего – hop

ответ

11

Я столкнулся с этой проблемой после обновления до 2.4.8 yuicompressor

Существует знает ошибка в 2.4.8 где он не обрабатывает цитируемые пути, созданные ant.

Возвращаясь к 2.4.7, исправил проблему для меня. Вы можете скачать 2.4.7 здесь: https://github.com/yui/yuicompressor/downloads

Вы можете найти обсуждение этого вопроса здесь:. http://www.yuiblog.com/blog/2013/05/16/yuicompressor-2-4-8-released/

«Новая версия 2.4.8 не удается разобрать Windows, имя файла в кавычки корректно 2.4.7 работает отлично. Например, команда java -jar yuicompressor-2.4.8.jar "d: \ work \ common_source.js" -charset utf-8 -disableoptimizations -v -o "d: \ work \ common.js" дает ошибку java.io. FileNotFoundException: workcommon.js: \ work \ coomon_source.js (Имя файла, имя каталога или синтаксис метки тома неверны). К сожалению, это делает его совершенно непригодным для использования ».

И компрессор дефект YUI здесь: https://github.com/yui/yuicompressor/issues/78

+0

Снижение с 2.4.8 до 2.4.7 работало для меня. Благодаря! – CleanUp

+1

Это реальный ответ, ребята, если вы будете бороться так, как я, вы будете благодарны этому парню! – euther

+0

Я переключил это на принятый ответ, хотя в другом ответе я разместил эту же информацию. Я делаю это для потомков. – Chenzo

1

Я побежал в эти рода проблемы в прошлом, попробовать/Bin

+0

Ничего хорошего. Я попробовал это. Это «ускользает» путь назначения ... поэтому вместо того, чтобы быть c: \ Bin \ test-min.js, он говорит, что Bintest-min.js – Chenzo

+1

Я лгал. Спасибо @EGHM - это решило. Мне пришлось установить и целевой, и целевой путь в/Bin, и он работает. (Я мог бы помахать, я уже это пробовал.) – Chenzo

+2

После нескольких тестов - на самом деле это что-то связано с yuicompressor-2.4.8.jar, как только я вернулся к yuicompressor-2.4.7.jar, это сработало. Надежда, которая помогает кому-то в эфире. – Chenzo

Смежные вопросы