2009-03-05 9 views
8

Creé una aplicación web en Netbeans 6.5. Ahora quiero usar la biblioteca Joda Time. Quiero compartir esta biblioteca a través de subversión, porque no quiero que mis compañeros de equipo dependan de la configuración de Netbeans.Cómo obtener las bibliotecas compartibles de Netbeans 6.5 que funcionan

Para que el proyecto funcione, primero agregué la biblioteca a la biblioteca de Netbeans (Herramientas-> Biblioteca). Esto funcionó bien. El JAR se agrega a la ruta de clases y también se implementa.

Pero cuando creo una biblioteca compartida (a través de Project Properties-> Libraries-> Browse/New Libraries Folder), el JAR no se encuentra en el classpath. Aparece el mensaje de error package org.joda.time does not exist en el código import org.joda.time.*.

¿Alguna idea?

+0

Me gustaría saber también. Finalmente nos dimos por vencidos y simplemente guardamos copias de las bibliotecas en un servidor ... –

+0

Me rindo también. Quiero observar: al crear un nuevo proyecto de aplicación web y al marcar "Usar una carpeta dedicada para almacenar bibliotecas", todo funciona. Pero no puedo encontrar ninguna diferencia entre los dos proyectos :-( – doekman

+0

¿Es esto alguna ayuda? Http://bigallan.blogspot.com/2008/03/shared-libraries-finally-made-it-to.html –

Respuesta

0

Esto es lo que hice:

  • Herramientas -> Biblioteca -> Nueva biblioteca ...

    • llama la biblioteca en tiempo joda
    • complemento añade la joda-tiempo- archivos 1.6.jar a ella
  • Proyecto -> Propiedades -> Bibliotecas

    • bajo la etiqueta de compilación
      • Agregar biblioteca ...
      • seleccionado joda tiempo

(Editar, parece que veo el problema ahora - pero tal vez no).

Debe agregar la biblioteca a las bibliotecas de compilación Y agregarlo a las bibliotecas de distribución. ¿O estoy malentendiendo la pregunta?

+0

I han agregado la biblioteca a la pestaña de tiempo de compilación. Pero cuando lo haces así, no puedes compartir la biblioteca. Otros miembros del equipo tienen que agregar la biblioteca a su biblioteca global (herramientas-> biblioteca), y yo quería evitar solo eso. – doekman

0

Esta entrada del blog describe un truco que funcionó en NetBeans 5. No sé si funcionará en NetBeans 6.5. Tampoco sé si esto funcionará si está creando archivos todas las noches en un servidor.

http://blogs.oracle.com/gjmurphy/entry/using_netbeans_free-form_projects_as

Recuerdo la creación de bibliotecas compartidas como éste hace 8 años en JBuilder. Ojalá Netbeans lo tuviera ahora.

1

¿Cuál es el alcance de esta biblioteca? ¿Esta biblioteca se usa solo para esta aplicación web en particular?

En caso afirmativo, ¿podemos colocar la biblioteca en el directorio WEB-INF/lib y también verificarla en subversión?

Las bibliotecas en el directorio WEB-INF/lib deberían agregarse automáticamente a la ruta de clases del proyecto.

+0

Las bibliotecas en WEB-INF/lib no están expuestas en tiempo de compilación, y eso es justo lo que necesito ... – doekman

0

al crear un 'nuevo proyecto', hay una opción para habilitar 'carpeta dedicada para bibliotecas'.De esta forma, las bibliotecas también se comprometerán con el repositorio y el desarrollador similar podrá verificar su proyecto con todas las bibliotecas, su proyecto tiene dependencias, eliminando así la configuración de netbeans.

0

En caso de que un proyecto dependa de JAR que pueden colocarse en diferentes ubicaciones para diferentes usuarios, se puede usar una variable IDE con nombre.

http://wiki.netbeans.org/NewAndNoteWorthyNB65#section-NewAndNoteWorthyNB65-VariableBasedPathsInJ2SEJ2EEProjects

Otra opción sería utilizar el plugin de Maven que ya funciona bastante bien en NetBeans 6.5. Un repositorio de Intranet para los archivos Artifact Jar podría colocarse en un servidor de archivos o administrarse a través de Maven Proxy como Nexus.

Cuestiones relacionadas