Posts Tagged “Java”

Tengo que reconocer que cuanto más uso Maven más me gusta. Un sistema de construcción de proyectos estándar, extensible y basado en una lenguaje declarativo[1] es, al menos en su planteamiento, una herramienta muy prometedora.

Sin embargo, el proceso de aprendizaje ha sido largo y duro, entre otras cosas, porque Maven parece estar en un continuo estado de inestabilidad, plagado de detalles indocumentados, de versiones Beta, actualizaciones, etc. Tanto es así, que aún después de haber leído los dos libros gratuitos que hay en la Red[2], la documentación y numerosos foros y artículos, todavía me quedan muchos puntos oscuros.

Hasta ahora Maven me ha sido muy útil en temas como en la automatización del proceso de construcción, almacenamiento de los artefactos de forma ordenada utilizando repositorios compartidos o la obtención de artefactos de terceros almacenados en repositorios en Internet y, sin embargo, me he encontrado muchos problemas en lo que se supone que es un punto fuerte de Maven: la gestión de dependencias.

Aquí comienza una serie de tres entradas en las que voy a tratar de explicar como funciona la gestión de dependencias en Maven pero, sobre todo, voy a profundizar en los aspectos que no están claros en la documentación (o que no lo estaban para mi) y que he aprendido, a las malas, con la experiencia.

En esta entrada hablaré sobre los aspectos básicos de la gestión de dependencias con Maven, la segunda tratará características avanzadas y la tercera y última estará dedicada a diseño y buenas prácticas[3].

Lee el resto de esta entrada »

  1. Al contrario que Apache Ant, que tiene un enfoque procedural.
  2. En la última entrada incluiré reseñas bibliográficas y de otros recursos en Internet.
  3. Todo lo que se refiere en esta serie de artículos está basado en la versión 2.1.0-M1. Como ya he dicho, Maven está en continua evolución y puede que tu versión no se comporte igual en ciertos aspectos.
Tags: , ,

Comments 2 Comentarios »

La herramienta APT del JDK sirve para procesar las anotaciones presentes en el código Java permitiendo,  por ejemplo, generar nuevas clases a partir de los metadatos que contienen.

Si quieres integrar esta herramienta en la construcción de un proyecto con Maven puedes utilizar el maven-apt-plugin de Tobago[1]. Este plugin hace casi todo el trabajo pero, como veremos más adelante, es necesario realizar algunos ajustes para que el proyecto se construya de forma adecuada en la línea de comandos y en Eclipse con m2eclipse.

Lee el resto de esta entrada »

  1. Existen otras formas mas "artesanales" de hacerlo como, por ejemplo, ésta: http://blogs.steeplesoft.com/maven-and-annotations-not-as-easy-as-it-should-be/
Tags: , , , ,

Comments No Hay Comentarios »

Existen dos plugins para integrar Maven en Eclipse: m2eclipse y Q4E.

Hasta hace muy poco he venido usando Q4E. Me parecía que estaba mejor integrado con Eclipse, tenía visor de dependencias y había sido admitido oficialmente por la fundación Eclipse. Sin embargo, después de sufrir sus fallos durante algún tiempo y de constatar que no salían nuevas versiones me he decidido a darle otra oportunidad a m2eclipse.

En seguida me he dado cuenta de que m2eclipse no ha dejado de avanzar. Ya tiene las características que me gustaron de Q4E y muchas otras. Además, parece más estable y trabajado, lo cual no es extraño ya que lleva mucho mas tiempo en desarrollo (fue el primero). Para mi sorpresa, también m2eclipse está en la incubadora de la fundación Eclipse[1].

En las próximas líneas voy a tratar de explicar el procedimiento que he utilizado para instalar un entorno de desarrollo capaz de construir proyectos Maven en Eclipse, con m2eclipse, y desde la línea de comando.

Lee el resto de esta entrada »

  1. Es extraño que existan dos plugins aceptados por Eclipse para hacer lo mismo. No se si es bueno, teniendo en cuenta que se fomenta la competencia, o malo, porque se duplican esfuerzos
Tags: , , ,

Comments 7 Comentarios »

Con éste, comienzo una una serie de artículos dedicados a la creación de servicios en JBoss 4.

Esta primera entrada es una breve introducción a la arquitectura de JBoss y a JMX. Lee el resto de esta entrada »

Tags: , ,

Comments 1 Comentario »

java-concurrency-in-practice Título: Java concurrency  in practice
Autores: Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea
Editor: Addison-Wesley
Año: 2006
Idioma: Inglés
Páginas: 403
Encuadernación: tapas blandas
ISBN: 0321349601

Recientemente he vuelto a leer algunas partes de este libro dedicado a la programación concurrente en Java y he decidido que es un buen momento para un comentario, aún cuando ya hace tiempo que lo leí al completo.

Está escrito por algunos de los miembros del grupo de expertos del Java Community Process JSR 166, destacando Brian Goetz, que probablemente es el padre de las nuevas características de concurrencia de Java 5 y 6. Lee el resto de esta entrada »

Tags: , ,

Comments No Hay Comentarios »