2014-11-29 3 views
0

Я наткнулся на Джангару, и, похоже, это то, что мне нужно. Проблема в том, что для его использования документы говорят, что мне нужно настроить maven.Как использовать Jangaroo для преобразования одной функции As3 в javascript?

У меня действительно есть одна функция, так что все это немного перебор.

Идеальное решение было бы похоже на Конвертер кода Telerik (http://converter.telerik.com), но для AS3.

+0

Ну, вы можете настроить maven или преобразовать функцию вручную (если вы не знаете JS, найдите того, кто это делает, на самом деле не важно, знают ли они AS3, это достаточно близко, чтобы любой, кто знает JS должен быть в состоянии прочитать его). Дело в Telerik заключается в том, что преобразование между C# и VB довольно тривиально, поскольку оба они основаны на платформе .NET. При конвертации из AS3 в JavaScript вам необходимо иметь дело с тем, что AS3 имеет существенно другую библиотеку времени исполнения. – jjm

+0

@ beepe9000 'Javascript' и ActionScript' AS3' основаны на спецификации 'ECMAScript'. Так что это не должно быть сложно. Но где ваш код? – helloflash

+0

Я учил, что код не имеет отношения к этому вопросу, так как я прошу совета по использованию Jangaroo без использования maven. В моем случае я пытаюсь перенести алгоритм скремблирования в VB.Net. Я не очень практичен в AS3, меньше, чем я в JS, поэтому я решил использовать Js, чтобы упростить задачу перекодировки на Vb. Однако это пакет: http: // pastebin.com/6dRUqpr0 – beppe9000

ответ

1

Я только что обновил документацию о том, как использовать Jangaroo как инструмент командной строки:

https://github.com/CoreMedia/jangaroo-tools/wiki/Stand-Alone-Compiler

Выполнив шаги с 1 по 6, вы можете скомпилировать один класс так:

mkdir joo\classes 
jooc -v -g SOURCE -classpath %JOOLIBS%\jangaroo-runtime.jar -sourcepath . -d joo\classes GACodec.as 

Обратите внимание, что сгенерированный файл JavaScript GACodec.js работает только вместе со временем выполнения jangaroo. Страница Wiki продолжается с инструкциями о том, как в итоге работать с Webapp. Для вашего класса, вы просто должны распаковать jangaroo-runtime.jar:

"%JAVA_HOME%\bin\jar" -xf %JOOLIBS%\jangaroo-runtime.jar 

Затем вы можете запустить свой класс из крошечного HTML файл, который выглядит так:

<script src="joo/jangaroo-runtime.module.js"></script> 
<script> 
    joo.classLoader.import_("GACodec"); 
    joo.classLoader.complete(function() { 
    alert(new GACodec().encode("FOOBAR!")); 
    }); 
</script> 

При попытке из кода, я заметил что для его работы требуются незначительные изменения: Jangaroo не генерирует неявный код инициализации для типизированных локальных переменных. В вашем коде есть как минимум две строки, где объявляется целочисленная переменная, но не инициализируется явно. ActionScript установил бы его на 0, но Jangaroo этого не делает. Во всяком случае, это лучше стиль сделать явную инициализацию, и если вы сделаете это, то есть в исходном коде замените

var i:int; 

по

var i:int = 0; 

, насколько я могу судить, это, кажется, работает!

Последняя вещь, я нахожу использование Maven проще, чем установка Jangaroo SDK, так как вам просто нужно установить Maven один раз, и он заботится о всех необходимых загрузках и делает обновление до последней версии Jangaroo ветерок: просто увеличьте версию Jangaroo номер в вашем pom.xml, а Maven заботится обо всем остальном.