Платформа, которая позволяет вам отправлять фрагменты кода в Интернете для практики.
LaunchTestrun зависит от следующего программного обеспечения для запуска:
Чтобы установить эти пакеты на Ubuntu или Debian, запустите следующие команды:
Чтобы установить необходимые инструменты, запустите
sudo apt-get update
sudo apt-get install default-jre default-jdk build-essential python2 python3 mono-devel
release/ в webapps/ Directory на вашем сервере Apache Tomcat (если вы использовали предыдущие шаги, которые Tomcat должен быть установлен в ~/ launchTestrun) и пропустите шаг 5.LaunchTestRun.war .webapps/ Directory.bin/catalina.sh в вашей установке Apache Tomcat на catalina.sh в этом каталоге (исправления проблем с Java 9 и Tomcat 8).bin/ каталоге в вашей исполняемом файле установки Tomcat, выполнив chmod +x *.sh в bin/ каталоге вашей установки Tomcat ..bin/startup.sh в вашем каталоге установки Tomcat, чтобы запустить LaunchTestrun. Если вы хотите получить большую безопасность при установке LaunchTestrun (настоятельно рекомендуется, так как другие будут запускать код на вашем сервере!), Вы должны создать нового пользователя, у которого есть только разрешения для запуска и получить доступ к файлам в каталоге установки Tomcat. Чтобы обеспечить свою установку, после запуска bin/startup.sh в первый раз после перемещения файла.
su root
chmod 755 [ YOUR TOMCAT DIRECTORY HERE ] -R
cd [ YOUR TOMCAT DIRECTORY HERE ]
useradd launchtestrun
mkdir work
touch webapps/LaunchTestRun/forensics.txt
chown launchtestrun:launchtestrun -R work
chown launchtestrun:launchtestrun -R logs
chown launchtestrun:launchtestrun -R webapps/LaunchTestRun
chown launchtestrun:launchtestrun -R webapps/LaunchTestRun/upload
chown launchtestrun:launchtestrun -R webapps/LaunchTestRun/forensics.txt
После установки этих разрешений, при запуске сервера LaunchTestrun, переключитесь на пользователь launchtestrun , прежде чем запустить startup.sh со следующими командами:
su launchtestrun
cd [ YOUR TOMCAT DIRECTORY HERE ]/bin
./startup.sh
Чтобы просмотреть судебный журнал всех загруженных и выполненных файлов (содержащий IP, вход, вывод, хэш MD5, загруженное время и т. Д.), Просмотрите webapps/LaunchTestRun/forensics.txt .
Примечание. Рекомендуется, чтобы инитализовать репозиторий GIT в webapps/LaunchTestRun/problems , чтобы проблемы могли быть удаленной загрузкой, отредактированы и отредактированы, если это необходимо.
webapps/LaunchTestRun/problems в вашем каталоге Apache Tomcat. Создайте новый каталог со следующей структурой: [+] Name of problem
|- config.json
|- judge.in
|- judge.out
|- sample.in
|- sample.out
config.json должен содержать следующие данные:
{
"cpid":"12345",
"title":"Sample Tile 1",
"description":"Test Problem Description",
"pdf":"http://www.pdfsite.org/files/test.pdf",
"setinfo":"Fall Competition 2019",
"samplein":"sample.in",
"sampleout":"sample.out",
"judgein":"judge.in",
"judgeout":"judge.out",
"inputname":"input.txt",
"timeout":"2000"
}
Где:
cpid - это ID # для проблемы, которую вы хотите определить.title - это название для проблемы, которую вы хотите определить.description - это описание проблемы, которую вы хотите определить.pdf - это ссылка на URL в файл PDF, который вы хотите отобразить с проблемой.setinfo - это информация о задаче проблемы, из которой вы хотите определить проблему.samplein - это имя образца входного файла. (Ввод, приведенный в программу, загруженную пользователем)sampleout - это имя образца выходного файла. (Вывод, ожидаемый для входа)judgein - это имя входного файла судьи. (Ввод, приведенный в программу, загруженную пользователем)judgeout - это имя вывода судьи. (Вывод, ожидаемый для входа)inputname -это имя входного файла, который будет прочитать программу, загруженную пользователем, в котором будет переименован входной файл образца/судьи.timeout - это целое число, определяющее количество миллисекундов, которое будет выделена программа для выполнения до принудительного прекращения.webapps/LaunchTestRun/settings.json , который содержит пути, которые LaunchTestrun будет искать компиляторы. Сервер LaunchTestrun можно получить по умолчанию по умолчанию: http://127.0.0.1:8080/LaunchTestRun/index.html/ после того, как он настроен с Tomcat в предыдущих разделах. Список добавленных проблем можно получить по умолчанию от: http://127.0.0.1:8080/LaunchTestRun/listproblems.html/ .