Я не могу найти или загрузить основной класс, когда я пытаюсь запустить свой Java-код - PullRequest
1 голос
/ 20 сентября 2019

Итак, я запустил свой Java-код в IntelliJ Idea, затем я получил следующую ошибку.

затем я попытался изменить java SDK с v.12 на v.11, другие проекты, которые работали правильно, выдают те же результаты.

Это код, который я 'Я пытаюсь бежать.Пример из Deitel Как программировать на Java.

package ConcurrentProgramming.ParallelAndNonParallel;

import java.security.SecureRandom;
import java.text.NumberFormat;
import java.time.Duration;
import java.time.Instant;
import java.util.Arrays;

public class SortComparison {
    public static void main(String[] args) {

        SecureRandom random = new SecureRandom();

        int[] array1 = random.ints(15_000_000).toArray();
        int[] array2 = new int[array1.length];

        System.arraycopy(array1, 0, array2, 0, array1.length);

        System.out.println("Starting sort");
        Instant sortStart = Instant.now();
        Arrays.sort(array1);
        Instant sortEnd = Instant.now();

        long sortTime = Duration.between(sortStart, sortEnd).toMillis();
        System.out.printf("Total time in milliseconds: %d%n%n", sortTime);

        System.out.println("Starting parallelSort");
        Instant parallelSortStart = Instant.now();
        Arrays.parallelSort(array2);
        Instant parallelSortEnd = Instant.now();

        long parallelSortTime =
                Duration.between(parallelSortStart, parallelSortEnd).toMillis();
        System.out.printf("Total time in milliseconds: %d%n%n",
                parallelSortTime);

        String percentage = NumberFormat.getPercentInstance().format(
                (double) sortTime / parallelSortTime);
        System.out.printf("\nsort took %s more time than parallelSort%n",
                percentage);

    }
}

и вот мой каталог

1 Ответ

1 голос
/ 20 сентября 2019

Либо код не скомпилирован, либо его нет в пути к классам.Я не пользователь IntelliJ, поэтому я не могу сказать вам, что основано на том, что вы предоставили.

Проверьте, что класс компилируется - вы должны увидеть его здесь (при условии, что каталог out находится там, где IntelliJ помещает классы):

LearningJava\out\ConcurrentProgramming\ParallelAndNonParallel\SortComparison.class

Если этоесли нет, то проблема в том, что IntelliJ не компилирует класс или не строит проект.

Если он есть, попробуйте запустить его из командной строки напрямую:

java -cp <path-to-out> ConcurrentProgramming.ParallelAndNonParallel.SortComparison

Если это работает, проблема в том, что IntelliJ устанавливает правильный путь к классу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...