Начало работы с JavaCC
Я новичок в JavaCC и не могу понять, как он работает. Я использую Mac OS X, и я установил javacc-6.0.застегнул и расстегнул молнию. Я не могу сделать скрипт javacc доступным с моего пути, как при вводе javacc
на терминале я получаю следующее сообщение:
-bash: javacc: command not found
как сделать сценарий javacc доступным с моего пути?
моя распакованная папка javacc-6.0
- в следующем каталоге: /Users/Rishabh/Desktop/javacc
поэтому я делаю следующее на терминал:
PATH=$PATH:/Users/Rishabh/Desktop/javacc/javacc-6.0/
введя javacc
next дает мне то же самое сообщение.
6 ответов
версия JavaCC 6.0, которую я загрузил сегодня (2013.07.22), не имела полного каталога bin. В нем отсутствовали все файлы сценариев! Надеюсь, это будет исправлено в ближайшее время.
для OS X и других вариантов unix/linux отсутствующий файл сценария называется javacc, должен быть исполняемым и должен содержать следующее:
#!/bin/sh
JAR="`dirname `/lib/javacc.jar"
case "`uname`" in
CYGWIN*) JAR="`cygpath --windows -- "$JAR"`" ;;
esac
java -classpath "$JAR" javacc "$@"
добавьте каталог bin в свой путь (опуская обратную косую черту-как указал Ахмед Масуд), и все должно быть ticketty boo. Если ваша ОС происходит из Redmond или вы хотите запустить jjtree или jjdoc, просто загрузите javacc-5.0 и скопируйте файлы сценариев (не каталог lib!!!!) из каталога 5.0 bin в каталог 6.0 bin.
в Mac OS X & Linux я просто использую один скрипт и две символические ссылки:
echo 'java -cp /path/to/javacc.jar $(basename ) "$@"' > javacc
chmod 755 javacc
ln -s javacc jjtree
ln -s javacc jjdoc
первые две строки создать скрипт и сделать его исполняемым.
Вторые две строки повторно используют javacc
скрипт для jjtree и jjdoc, так как все это происходит из одной банки.
больше javacc
:
#!/bin/sh JAR="`dirname `/lib/javacc.jar"
case "`uname`" in
CYGWIN*) JAR="`cygpath --windows -- "$JAR"`" ;; esac
java -classpath "$JAR" javacc "$@"
больше jjtree
:
#!/bin/sh JAR="`dirname `/lib/javacc.jar"
case "`uname`" in
CYGWIN*) JAR="`cygpath --windows -- "$JAR"`" ;; esac
java -classpath "$JAR" jjtree "$@"
создайте эти сценарии в
вам нужно сначала распаковать пакет и добавить место, где ваш javacc
находится в
PATH
переменные среды.
как:
set path=%path%;<location_of_your_javacc>;
проверьте, есть ли у вас javacc
и jjtree
на вашего javacc-6.0.zip
. Когда вы получите javacc6.0
от https://javacc.java.net/, этот каталог bin пуст.
javacc
& jjtree
скрипты.
на самом деле я использую Java 5.0, и я изменил свой .profile
файл для добавления (я помещаю javacc в папку моих приложений):
export
PATH=/opt/local/bin:/opt/local/sbin:/Applications/javacc-5.0/bin/:$PATH
он работает отлично.
в Windows у меня также не было javacc и я должен использовать
java -cp bin\lib\javacc.jar javacc
вместо. Это очень расстраивает, потому что все документы предлагают использовать javacc
, которые мы упускаем. И все же я вижу это!--2--> был определен в старом javacc 5.0. Я вижу javacc.bat
здесь
java -classpath "%~dp0lib\javacc.jar;%~dp0lib\javacc.jar;%~f0\..\lib\javacc.jar" javacc %1 %2 %3 %4 %5 %6 %7 %8 %9