Как исправить, что пакет javac не существует?

#java #compiler-errors

#java #ошибки компилятора

Вопрос:

Я создаю в своем коде файл Java, который мне нужно преобразовать в класс. Мой файл содержит следующее:

 import com.company.tpch.TpchApplication;
import com.company.tpch.TpchApplicationBuilder;
import com.speedment.runtime.core.ApplicationBuilder;
public class java {
    public void x() {
        TpchApplication app = new TpchApplicationBuilder()
                .withPassword("root")
                .withLogging(ApplicationBuilder.LogType.STREAM)
                .withLogging(ApplicationBuilder.LogType.APPLICATION_BUILDER)
                .withSkipCheckDatabaseConnectivity()
                .build();

    }
}
 

Когда я пытаюсь скомпилировать файл с

 javac -d . C:UserssDesktopdemosrcmainjavajava.java
 

У меня есть эти ошибки:

 import com.company.tpch.TpchApplication;
                       ^
C:UserssDesktopdemosrcmainjavajava.java:2: error: package com.company.tpch does not exist
import com.company.tpch.TpchApplicationBuilder;
                       ^
C:UserssDesktopdemosrcmainjavajava.java:3: error: package com.speedment.runtime.core does not exist
import com.speedment.runtime.core.ApplicationBuilder;
                                 ^
C:UserssDesktopdemosrcmainjavajava.java:7: error: cannot find symbol
        TpchApplication app = new TpchApplicationBuilder()
        ^
  symbol:   class TpchApplication
  location: class java
C:UserssDesktopdemosrcmainjavajava.java:11: error: package ApplicationBuilder does not exist
                .withLogging(ApplicationBuilder.LogType.APPLICATION_BUILDER)
                                               ^
C:UserssDesktopdemosrcmainjavajava.java:10: error: package ApplicationBuilder does not exist
                .withLogging(ApplicationBuilder.LogType.STREAM)
                                               ^

  symbol:   class TpchApplicationBuilder
  location: class java
 

Как я могу это решить?

Комментарии:

1. Вы должны быть в каталоге C:UserssDesktopdemosrcmainjava , и команда должна быть javac -d . java.java .

Ответ №1:

Вам нужно добавить все классы, которые используются в вашей команде. Вот так:

 javac com/company/tpch/TpchApplication com/company/tpch/TpchApplicationBuilder java.java
 

Конечно, вы должны изменить это в соответствии с вашей структурой каталогов, поскольку я этого не знаю.

В любом случае я бы рекомендовал IDE, которая компилирует весь ваш проект сразу, например IntelliJ / Eclipse и / или инструмент зависимостей, такой как Maven / Gradle.

Комментарии:

1. @programmer Ты шутишь, да? Вы не можете называть каталоги в javac команде подобным образом. Вы действительно пробовали это?