Maven java исполняемый jar файл с параметрами

У меня есть файл csv, мне нужно с помощью команды mvn clean package собрать проект и получить jar файл. Пользователь запускает приложение, указывая параметром номер колонки по которой требуется поиск: java –jar name.jar 2, // запуск приложения в режиме поиска по второй колонке

После запуска программа выводит в консоль предложение ввести текст. После ввода программа выводит список всех строк из файла, вторая колонка которых начинается на «Bo», отсортированных по этой колонке.

Сделал так, чтобы jar файл компилировался. Main тоже сделал, покажу, но он 100% не правильный. При вызове команды java –jar name-1.0-SNAPSHOT.jar 2 Выводит ошибку Error: Unable to access jarfile name.jar Все решения из интернета по типу "Обновите java" сделаны.

Вот main:

public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    String data = null;
    while (!Objects.equals(data, "!quit")) {
        data = in.nextLine();
        InputStreamReader isr = new InputStreamReader(Objects.requireNonNull
                (Main.class.getResourceAsStream("/src/airports.csv")));
        try (BufferedReader reader = new BufferedReader(isr)) {
            while (reader.ready()) {
                String tmp = reader.readLine();
                if (tmp.startsWith(data)) {
                    System.out.println(tmp);
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Вот pom.xml

<groupId>org.example</groupId>
<artifactId>name</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>

<properties>
    <maven.compiler.source>11</maven.compiler.source>
    <maven.compiler.target>11</maven.compiler.target>
</properties>
<build>
    <plugins>
        <plugin>
            <!-- Build an executable JAR -->
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>3.1.0</version>
            <configuration>
                <archive>
                    <manifest>
                        <addClasspath>true</addClasspath>
                        <classpathPrefix>lib/</classpathPrefix>
                        <mainClass>com.java.Main</mainClass>
                    </manifest>
                </archive>
            </configuration>
        </plugin>
    </plugins>
</build>

Ответы (1 шт):

Автор решения: DronDron

У меня программа работает, по крайней мере запускается. Я на 99% уверен что просто не тот путь в jar'нику (т.к. сам так ошибался). Покажите, пожалуйста, выводы команд pwd (echo %cd% для windows) и ls (dir в windows, если не ошибаюсь) и саму команду.

UPD: только сейчас заметил, что в программе нигде не читаются параметры, так что в команде java –jar name-1.0-SNAPSHOT.jar 2 параметр "2" писать бессмысленно

UPD2: уже могу предположить что команда выполняется из корня проекта, попробуйте java –jar target/name-1.0-SNAPSHOT.jar

→ Ссылка