У меня есть программа, которую я только что закончил писать в CFML (файлы .cfm) для моего клиента, но я не хочу, чтобы мой клиент увидел исходный код. Я установлю программное обеспечение на его компьютер. Я попытался использовать compile.bat
, но когда я устанавливаю его на другом компьютере, он дает ошибку (язык java ...). Какие у меня варианты?Как защитить исходный код при развертывании на разных компьютерах
ответ
@Bardware правильно: на целевой машине должна быть такая же основная версия Java, как и у вас, скомпилированной с кодом, и, вероятно, для хорошей оценки второстепенная версия должна быть одинаковой или большей.
Вы можете - конечно же - противостоять этому с другого направления: узнать, какая версия Java у них запущена, и скомпилировать до , что версии. Тем не менее, им все равно потребуется запустить хотя бы минимальную версию Java, поддерживаемую для предполагаемой версии ColdFusion.
Также очень важно отметить @ комментарий Bardware против самого вопроса:
cfcompile.bat
вызововfindjava.bat
. Там установлена переменнаяJAVACMD
. Coldfusion предпочитает JAVA, который находится внутри установки CF . Это проблема, поскольку CF поставляется с JAVA 7, но может быть установлен для запуска с JAVA 8 вjvm.config
. Вы можете разрешить переменные из командыafterdeploycompdir
и скомпилировать без использования bat .
Спасибо @Adam! Вы снова помогли! Я очень благодарен ... –
Являются ли версии JAVA машины, на которой вы компилируете код и сервер, на котором вы запускаете код indentical? –
@Badware Oh .. Я не уверен в этом! Если это не так, как вы можете помочь? Благодаря! –
'cfcompile.bat' вызывает' findjava.bat'. Там установлена переменная 'JAVACMD'. Coldfusion предпочитает JAVA, которая находится в папке установки CF. Это проблема, поскольку CF поставляется с JAVA 7, но может быть настроен на запуск с JAVA 8 в 'jvm.config'. Вы можете разрешить переменные из команды 'afterdeploycompdir' и скомпилировать без использования файла bat. –