Estoy trabajando en un proyecto y un requisito es que si el segundo argumento del método principal comienza con " /
" (para Linux), debería considerarlo como una ruta absoluta (no es un problema), pero si no comienza con " /
”, Debe obtener la ruta de trabajo actual de la clase y agregarle el argumento dado.
Puedo conseguir el nombre de clase de varias maneras: System.getProperty("java.class.path")
, new File(".")
y getCanonicalPath()
, y así sucesivamente ...
El problema es que esto solo me da el directorio en el que se almacenan los paquetes, es decir, si tengo una clase almacenada en " .../project/this/is/package/name
", solo me daría " /project/
" e ignora el nombre del paquete donde .class files
vive el actual .
¿Alguna sugerencia?
EDITAR: Aquí está la explicación, tomada de la descripción del ejercicio
sourcedir puede ser absoluto (comenzando con "/") o relativo al lugar desde donde ejecutamos el programa
sourcedir es un argumento dado para el método principal. ¿cómo puedo encontrar ese camino?