Compilar programa por linha de comando

Pessoal, preciso de ajuda para compilar um programa por linha de comando.
Está resultando um erro, informando que não existe a classe Main.

Porém ao rodar a aplicação na IDe funciona normalmente.

O programa é compilado sem erros pela linha de comando, mas ao executar o java Programa, é retornado o seguinte erro:

W:\java\BackupSH\src\backupsh>java Main
Exception in thread “main” java.lang.NoClassDefFoundError: Main (wrong name: bac
kupsh/Main)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: Main. Program will exit.

Eu imaginei que pudesse ser algum dos imports, mas esse teste acima exibe simplesmente um Olá Mundo.

Alguem sabe ocm resolver?

Obrigado.

Hey,

O problema parece ser com o seu classpath. Tente executar assim: java ?classpath . nomedaclasse

Desculpe a ignorância, rsrs, mas é a primeira vez que preciso fazer isso…

Esse comando acima deve ser executado no diretório onde se encontra o arquivo .CLASS?

Preciso adicionar o diretório da aplicação nas variáveis de ambiente do Windows?

Eu apenas adicionei o diretório do java, para o comando “javac” funcionar.

Ele compila tudo certo. O problema é pra executar mesmo.

Obrigado.

Na tua directoria src:

java backupsh.Main

Agora sim consegui executar.

Mas uma dúvida.

Estando no src e executando backupSH.Main ele executa.

Pq estando dentro do diretório backupSH e executando somente o Main ele não encontra a classe?

A tua classe Main está na package backupsh, sendo assim, o que existe é uma class backupsh.Main e não apenas Main.