“Não é possível iniciar a compilação: o caminho de saída não é especificado para o módulo…”

108

Eu tenho um projeto Java + Gradle muito simples. Ele constrói bem. Ele funciona bem a partir do shell com "gradle run". No entanto, se tento executar dentro do IntelliJ, obtenho:

Cannot start compilation: the output path is not specified for module "xyz" Specify the output path in Configure Project.

Minha "saída do compilador" está definida como "Herdar caminho de saída de compilação do projeto". Não quero um caminho de saída personalizado, seja lá o que for, apenas faça uma compilação e execução normal do Gradle.

argila
fonte
1
Ao executar o código do IntelliJ, ele será compilado e executado pelo IntelliJ em vez do Gradle, e um diretório de saída de compilação diferente será usado. (O Android é uma história diferente.) No entanto, se a compilação do Gradle for importada corretamente, o diretório de saída do IntelliJ já deve estar configurado.
Peter Niederwieser

Respostas:

102

Você apenas tem que ir até seu Module settings > Projecte especificar uma "Saída do compilador do projeto" e fazer seus módulos herdarem do projeto. (Para isso vá para Modules > Paths > Inherit project.

Isso funcionou para mim.

pranavrao1
fonte
20
Bem, não escolher a Inherit Projectopção funcionou para mim
Krish Munot
6
Por que ele não consegue descobrir isso sozinho. Todo mundo diz que IntelliJ é melhor do que Eclipse, mas na minha experiência, ele não consegue pensar por si mesmo.
Andrew S
Para sua informação, descobri que no IntelliJ você faz um Arquivo> Novo> Módulo ... e cria um módulo Java, o caminho de saída deve ser definido por padrão.
J Woodchuck
Se isso não funcionar, não se esqueça de reiniciar o IntelliJ. Consertou para mim.
Cobie Fisher
97

Você deve definir um caminho no campo " Saída do compilador do projeto " em

File> Project Structure...> Project>Project compiler output

Este caminho será usado para armazenar todos os resultados da compilação do projeto .

BullyWiiPlaza
fonte
10

Ao configurar o plug-in de ideia no gradle, você deve definir os diretórios de saída da seguinte forma.

idea{
    module{
        inheritOutputDirs = false
        outputDir = compileJava.destinationDir
        testOutputDir = compileTestJava.destinationDir
    }
}
Lemiorhan
fonte
parece ótimo. Em que arquivo devo colocar esta configuração?
argila
Você deve colocá-lo no arquivo build.gradle em seu projeto.
lemiorhan
10

Estou respondendo para que possa encontrar a solução quando tiver que pesquisar esse erro novamente no Google.

Defina o caminho de saída de compilação do projeto como path_of_the_project_folder/out. Isso é o que está funcionando hoje. A documentação do intellj faz parecer que podemos selecionar qualquer pasta, mas não é o caso.

Kanj
fonte
7

Se nenhum dos métodos acima funcionou, tente fazer o mesmo para mim.

Vá para Arquivo> Estrutura do Projeto> Projeto e em Saída do Compilador do Projeto clique nos três pontos e forneça o caminho do nome do seu projeto (nome do arquivo) e então clique em Aplicar e então em Ok .

Deveria ser assim como na foto de um post.

priyanshu kumar
fonte
8
Não há imagem em sua resposta.
James Whiteley de
2
@priyanshu: Sério, não há nenhuma imagem em sua postagem.
Pawan
4

Abra o arquivo .iml. Procure a palavra-chave 'NewModuleRootManager'. Verifique se o atributo 'inherit-compiler-output' está definido como verdadeiro ou não. Se não for definido como verdadeiro.

Como isso :

component name="NewModuleRootManager" inherit-compiler-output="true">
    <content url="file://$MODULE_DIR$">
      <sourceFolder url="file://$MODULE_DIR$/test" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/spec" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/app" isTestSource="false" />
mdev
fonte
1

Depois disto

Duas coisas a fazer:

Configurações do projeto> Saída do compilador do projeto> Defina como "Caminho do projeto (o caminho real do seu projeto)” + ”\ out”.

Configurações do projeto> Módulo> Caminho> Escolha "Herdar caminho de compilação do projeto" "

Se o botão executado não estiver ativo

Você deve recarregar o IDEA

Денис Тимофеев
fonte
0

mude o menu suspenso para iniciar o arquivo do seu projeto

insira a descrição da imagem aqui

dev001
fonte
0

Também recebo este erro ao criar um projeto no IntelliJ sem usar um modelo.

Tenho 2 SDKs instalados: Amazon Corretto e java versão 11.0.4 e, portanto, o que faço quando recebo esse erro é "alterar o SDK", geralmente funciona bem com Corretto

para fazer isso você precisa clicar em Arquivo (no IntelliJ) / Estrutura do Projeto / Projeto / SDK do Projeto: selecione corretto na lista suspensa (ou marque a opção no seu computador) conforme mostrado aqui

espero que isso funcione para você também

Atenciosamente Constantin

Constantin
fonte
0

Erros causados ​​pela ausência de uma pasta predefinida para armazenar o arquivo de classe compilado, que normalmente é a pasta / out por padrão. Você pode tentar fechar Intellij> Importar Projeto> Da fonte existente. Isso vai resolver o problema.

logbasex
fonte