java - kepler - descargar eclipse oxygen
Dónde poner los frascos externos? (9)
Esta pregunta ya tiene una respuesta aquí:
- Cómo importar un jar en Eclipse 6 respuestas
Uso Eclipse (3.4) y mi clase compila sin advertencia ni errores. Mi proyecto usa un archivo jar externo.
¿Dónde debo colocar este archivo jar externo para no obtener un java.lang.NoClassDefFoundError
al usar esta clase desde otro proyecto (no en Eclipse)?
Podría simplemente extraer el contenedor en la carpeta del proyecto, pero eso no se siente bien.
Editar: esta pregunta no se trata de importar tarros en Eclipse, sino de usarlos fuera de Eclipse.
Cree un directorio lib compartido y coloque este jar, y cualquier otro archivo jar común que pueda tener allí. Si está utilizando Maven, entonces ya lo tiene en la forma del repositorio local.
En Eclipse, cree una variable classpath para este directorio y luego úselo para hacer referencia a su archivo jar en sus proyectos. Si tiene varios proyectos que cumplen estas condiciones, le hará la vida mucho más fácil. También hace que sea fácil cambiar la ubicación del directorio raíz si pasa de una unidad local a una de red.
En la aplicación externa, también incluirá este archivo jar desde su ubicación compartida en el classpath de las aplicaciones.
Lo coloco en una nueva carpeta. Esta carpeta debe incluirse en la ruta de compilación. No importa si está en Eclipse o afuera. Eclipse tiene una ruta de compilación específica para el proyecto y pasa esta ruta a javac. Si desea ejecutar javac fuera de Eclipse, debe pasar la ruta de compilación manualmente.
No importa demasiado dónde lo coloque, pero necesita configurar su otro proyecto que no sea Eclipse para poner los jar externos en su classpath, o use el mecanismo de directorio de extensiones, si es necesario. (Eso es más fácil, pero hacerlo explícito es posiblemente mejor).
Sé que esto no es exactamente lo que estás preguntando, pero ¿has considerado usar Maven? Algunos de los complementos como el ensamblaje pueden ser útiles en situaciones como estas.
Ten un frasco dentro de Eclipse, como James Camfield ha escrito.
Luego, cuando compile (Ant, Maven, manualmente) para su distribución, asegúrese de que el archivo jar esté incluido con o dentro de su jar de aplicación o war o ear o cualquier archivo, y que los scripts de inicio lo incluyan en classpath usando la línea de comando -classpath opción para Java, como VonC ha escrito.
No se preocupe por pegar los frascos en la carpeta de extensiones java, todo lo que hará es olvidarse de él cuando se trata de enviar su código a un tercero para que lo use, porque no lo tendrá configurado en su extremo .
ponerlo en su carpeta jre/lib/ext
todo lo dicho sobre el classpath es cierto, pero este es un lugar consistente y sensible para vivir.
Puede encontrar su carpeta jre mirando la variable de entorno JAVA_HOME en Windows.
Si quiere incluir un archivo JAR en su proyecto Eclipse, generalmente crearía una carpeta ''lib'' dentro de la carpeta del proyecto y colocaría el archivo allí. Luego necesita decirle a eclipse que lo incluya en la ruta de su clase para que su código se compile y se ejecute dentro de Eclipse.
Para hacer eso:
- Ir a las propiedades de su proyecto
- Seleccione ''Java Build Path'' en la columna de la izquierda
- Seleccione la pestaña ''Bibliotecas'' en la parte central de la ventana
- Haga clic en el botón Agregar JAR - esto le dará una lista de sus proyectos en eclipse - expanda su proyecto y en la carpeta lib - su jar estará allí.
- Seleccione el JAR, haga clic en Aceptar y vuelva a hacer clic en Aceptar fuera de la ventana de propiedades.
Su código ahora se compilará y ejecutará.
La respuesta de Simon parece ser la mejor, pero ahora está un poco desactualizada. Ha buscado en Google estas extensiones instaladas de Oracle Doc.
A partir de Java 6, los archivos JAR de extensión también pueden colocarse en una ubicación que es independiente de cualquier JRE particular, de modo que las extensiones puedan ser compartidas por todos los JRE instalados en un sistema.
Dice que para Windows debe colocar sus extensiones aquí% SystemRoot% / Sun / Java / lib / ext.
Solo necesita referenciarlo usando una opción -classpath
, en una carpeta que no está incluida en un área de trabajo de eclipse, es decir, que no depende en absoluto del eclipse.
Advertencia, no puede ejecutar su otro proyecto con java -jar
si hace referencia a su jar externo con la opción -cp
( vea esta pregunta )