#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
команде подобным образом. Вы действительно пробовали это?