Buenas.
Tengo el código para enviar un fichero a mi ftp y funciona correctamente desde ECLIPSE.
El problema se plantea cuando ejecuto la instrucción desde MSDOS para después crear una tarea programada que realice varias tareas y entre ellas, enviar un fichero por ftp.
Código Java:
Ver original[CODE]
import java.io.FileInputStream;
import java.io.IOException;
import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
public class FtpPedidos {
public static void main
(String[] args
) {
// Creando nuestro objeto ClienteFTP
FTPClient client = new FTPClient();
// Datos para conectar al servidor FTP
String ftp
= "mi.servidor.ftp"; // También puede ir la IP String password
= "mi.contraseña";
try {
// Conactando al servidor
client.connect(ftp);
// Logueado un usuario (true = pudo conectarse, false = no pudo
// conectarse)
if (client.login(user, password))
{
client.setFileType(FTP.BINARY_FILE_TYPE, FTP.BINARY_FILE_TYPE);
client.setFileTransferMode(FTP.BINARY_FILE_TYPE);
client.enterLocalPassiveMode();
String filename
= "mi.fichero";
// Guardando el archivo en el servidor
if (client.changeWorkingDirectory("mi.carpeta.ftp"))
if (client.storeFile(filename, fis))
System.
out.
println("Se ha grabado el fichero"); else
System.
out.
println("No se ha grabado el fichero");
// Cerrando sesión
client.logout();
// Desconectandose con el servidor
client.disconnect();
}
System.
out.
println(ioe.
getMessage()); }
}
}
[/CODE]
Hasta aquí todo funciona perfectamente desde ECLIPSE.
Si ejecuto desde MSDOS como:
c:\java FtpPedidos
Obtengo la siguiente respuesta:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/net/ftp/FTPClient at FtpPedidos.main(FtpPedidos.java:12)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.net.ftp.FTPClient
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)
... 1 more
Cual puede ser el problema?
Gracias