Почему я получаю "выражение получателя должно быть заменено квалификатором типа"? - PullRequest
1 голос
/ 13 апреля 2019
$ javac Main.java 
    Main.java:27: error: illegal static interface method call
        ProcessHandle.current().allProcesses().mapToLong(w->w.pid()).forEach(System.out::println);
                                            ^
      the receiver expression should be replaced with the type qualifier 'ProcessHandle'
    1 error

Почему я получаю "выражение получателя должно быть заменено квалификатором типа 'ProcessHandle'"?

Что мне делать вместо этого?Спасибо.


import java.lang.System;
import java.io.File;
import java.io.IOException;
import java.util.stream.Stream;

public class Main {

    public static void main(String args[]){

    System.out.println("visible processes pids are: ");
    ProcessHandle.current().allProcesses().mapToLong(w->w.pid()).forEach(System.out::println);  

    }
}

1 Ответ

0 голосов
/ 13 апреля 2019

Чего Вы пытаетесь достичь здесь? Кажется, не имеет смысла запрашивать текущий ProcessHandle, а затем использовать его для запроса всех процессов. Оба из них являются статическими методами. Вы, вероятно, хотите просто опустить ".current ()".

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