h1. Отчёт по 1 лабораторной работе (Тищенко Артём) *Тищенко Артём, гр. 5130201/20102* h1. Задание Реализовать аналог unix команды ls. Команда ls выводит список файлов в указанной директории. h1. Ход работы Предварительно были установлены OpenJDK версии 22.0.2 и Maven версии 3.9.9. Проверить версии можно с помощью команд:
java --version
mvn --version
# Для создания проекта использовалась следующая команда:
mvn archetype:generate -DgroupId=ru.spbstu.telematics.java -DartifactId=${ProjectName} -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
# Далее, согласно комментарию преподавателя, в pom.xml была заменена зависимость junit и добавлены библиотеки commons-io и commons-math
junit
junit
4.12
test
commons-io
commons-io
2.5
org.apache.commons
commons-math3
3.6
# В файле java_labs\lab1\src\main\java\ru\spbstu\telematics\java\App.java был написан основной код, содержащий логику команды ls.
# Для успешной компиляции проекта и создания jar файла, в pom.xml были добавлены строки с указанием манифеста
# Для компиляции и запуска программы использовались следующие команды:org.apache.maven.plugins maven-jar-plugin 3.2.0 ru.spbstu.telematics.java.App
mvn clean package
# Можно явно указать директорию (по умолчанию .)
java -jar target/lab1-1.0-SNAPSHOT.jar path/to/directory
h1. Результаты работы программы
На рисунке ниже представлен результат запуска программы без указания пути. По умолчанию программа выводит все файлы и директории внутри текущей директории.
!example1.png!
На втором рисунке представлен результат запуска программа с указанием пути до файла, а не до директории. В этом случае программа просто выводит относительный путь до файла, симулируя поведение unix команды ls.
!example2.png!
h1. Исходный код
Ссылка на репозиторий: [[https://github.com/Arity-T/java_labs]]