<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Mundo Geek &#187; eclipse</title>
	<atom:link href="http://mundogeek.net/etiqueta/eclipse/feed/" rel="self" type="application/rss+xml" />
	<link>http://mundogeek.net</link>
	<description>Mundo geek, bitácora sobre todo lo geek: software, gadgets, tecnología, internet, ...</description>
	<lastBuildDate>Fri, 25 May 2012 14:51:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Eclipse 3.5: Si Galileo programara en Java&#8230;</title>
		<link>http://mundogeek.net/archivos/2009/06/25/eclipse-3-5-si-galileo-programara-en-java/</link>
		<comments>http://mundogeek.net/archivos/2009/06/25/eclipse-3-5-si-galileo-programara-en-java/#comments</comments>
		<pubDate>Thu, 25 Jun 2009 16:07:54 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[programacion]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=3479</guid>
		<description><![CDATA[Día grande para la comunidad Eclipse con el lanzamiento del nuevo Eclipse 3.5 (Eclipse Galileo) y 32 proyectos más relacionados. Las novedades, que son muchas, en Eclipse 3.5 &#8211; New and Noteworthy.]]></description>
			<content:encoded><![CDATA[<p>Día grande para la comunidad <a href="http://mundogeek.net/archivos/2009/05/07/configurando-eclipse/" title="Configurando Eclipse">Eclipse</a> con el lanzamiento del nuevo <a href="http://www.eclipse.org/downloads/" title="Eclipse 3.5, Galileo">Eclipse 3.5</a> (Eclipse Galileo) y <a href="http://www.eclipse.org/galileo/projects.php">32 proyectos más relacionados</a>. Las novedades, que son muchas, en <a href="http://download.eclipse.org/eclipse/downloads/drops/R-3.5-200906111540/eclipse-news-all.html" title="Novedades en Eclipse 3.5">Eclipse 3.5 &#8211; New and Noteworthy</a>.</p>
<p><img src="http://mundogeek.net/wp-content/eclipse-galileo.png" alt="Eclipse 3.5, Galileo"/></p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2009/06/25/eclipse-3-5-si-galileo-programara-en-java/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Configurando Eclipse</title>
		<link>http://mundogeek.net/archivos/2009/05/07/configurando-eclipse/</link>
		<comments>http://mundogeek.net/archivos/2009/05/07/configurando-eclipse/#comments</comments>
		<pubDate>Thu, 07 May 2009 19:44:42 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[ide]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[programacion]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=3180</guid>
		<description><![CDATA[Eclipse es uno de los mejores entornos de desarrollo que existen, tanto para Java como para otros lenguajes como Python o C/C++, pero lo es mucho más si lo personalizamos para adaptarlo a nuestros gustos y necesidades. A continuación os dejo algunos de los cambios que me gusta realizar. En General marcar &#8220;Show heap status&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p>Eclipse es uno de los mejores entornos de desarrollo que existen, tanto para Java como para otros lenguajes como Python o C/C++, pero lo es mucho más si lo personalizamos para adaptarlo a nuestros gustos y necesidades. A continuación os dejo algunos de los cambios que me gusta realizar.<span id="more-3180"></span></p>
<ul>
<li>En General marcar &#8220;Show heap status&#8221; para mostrar un pequeño indicador en la esquina inferior derecha con el uso de Java de la memoria dinámica.</li>
<li>En General -> Appearance, marcamos &#8220;Override presentation settings&#8221; para poder modificar la posición de las pestañas y el selector de perspectivas. Desmarcamos &#8220;Show text on the perspective bar&#8221; para no mostrar el nombre de la perspectiva actual en la barra de perspectivas, para lograr más espacio. Marcamos &#8220;Show traditional style tabs&#8221; para usar pestañas normales y desmarcamos &#8220;Enable animations&#8221; para desactivar las animaciones y que el entorno vaya más fluido.</li>
<li>En General -> Appearance -> Colors and Fonts, expandimos Basic, seleccionamos Text Font, pulsamos Change, y seleccionamos la fuente que queramos utilizar para los editores. En mi caso <a href="http://mundogeek.net/archivos/2006/11/18/fuentes-para-programacion" title="Fuentes para programación">suelo utilizar Bitstream Vera Sans Mono o Consolas</a>.</li>
<li>En General -> Editors -> Structured Text Editors marcamos Enable folding para contar con la característica de code folding en los editores de HTML, JSP, XML, &#8230;</li>
<li>En General -> Editors -> Text Editors marcamos Insert spaces for tabs para que el editor introduzca espacios al pulsar la tecla de tabulación en lugar de caracteres de tabulación. Marcamos Show print margin para que el editor muestre una línea en la columna 80. Marcamos show line numbers para mostrar los números de línea.</li>
<li>En General -> Editors -> Text Editors -> Spelling desmarcamos &#8220;Enable spell checking&#8221; para que no compruebe la ortografía, cosa que en un editor de código molesta más de lo que ayuda.</li>
<li>En General -> Workspace seleccionamos Other, UTF-8 para Text file encoding para usar Unicode como juego de caracteres para los archivos que creemos y Other, Unix en New text file line delimiter para usar el caracter de fin de línea de Unix.</li>
<li>En Java -> Code Style -> Formatter pulsamos &#8220;Edit&#8230;&#8221; para modificar la forma de comportarse del formateo de código automático de Eclipse. En la pestaña &#8220;Identation&#8221; del nuevo diálogo seleccionamos &#8220;Spaces only&#8221; para &#8220;Tab policy&#8221; para que utilice siempre espacios y no tabuladores. Marcamos Statements within &#8216;switch&#8217; body para que indente las sentencias del switch. Cambiamos el nombre del perfil al que queramos en &#8220;Profile name&#8221; y pulsamos Ok.</li>
<li>En Java -> Editor -> Save Actions marcamos Perform the selected actions on save y marcamos Format source code para que use el formateo de código automático al guardar el archivo, Organize imports para que organice los imports según el paquete y Additional actions para otras acciones. Pulsamos Configure para configurar estas otras acciones y en Code Style marcamos Convert for loops to enhanced para que sustituya los bucles que recorren colecciones por la versión <a href="mundogeek.net/archivos/2009/02/19/bucles-for-each-en-java/" title="Bucles for each en Java">for-each</a> y desmarcamos Use modificer &#8216;final&#8217; where possible para que no declare las variables que no modificamos como final. En Unnecessary Code marcamos Remove unused imports para que se eliminen los imports que no utilizamos. En Code Organizing marcamos Correct indentation y Sort members.</li>
<li>Cerramos la vista de Outline, que podemos sustituir con el breadcumb, haciendo clic sobre el botón de la barra de herramientas Toggle Breadcumb, o con la vista de outline rápida, pulsando Ctrl + O.</li>
</ul>
<p>Eclipse guarda la configuración del entorno en una carpeta .metadata dentro del directorio del espacio de trabajo. Una vez configurado basta conservar esta carpeta.</p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2009/05/07/configurando-eclipse/feed/</wfw:commentRss>
		<slash:comments>29</slash:comments>
		</item>
		<item>
		<title>Decompilar clases Java</title>
		<link>http://mundogeek.net/archivos/2009/03/28/decompilar-clases-java/</link>
		<comments>http://mundogeek.net/archivos/2009/03/28/decompilar-clases-java/#comments</comments>
		<pubDate>Sat, 28 Mar 2009 17:58:08 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[decompilador]]></category>
		<category><![CDATA[decompilar]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=2861</guid>
		<description><![CDATA[JD-Core es un decompilador de clases Java que destaca, entre otras cosas, porque, a diferencia del popular Jad, soporta algunas de las novedades más importantes introducidas en Java 5, como los generics o el tipo enum. Este decompilador cuenta con dos interfaces, una aplicación standalone llamada JD-GUI y un plugin para Eclipse llamado JD-Eclipse. Vamos [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://java.decompiler.free.fr/" title="Decompilador Java JD-Core">JD-Core</a> es un decompilador de clases Java que destaca, entre otras cosas, porque, a diferencia del popular <a href="http://www.varaneckas.com/jad" title="Decompilador Jad">Jad</a>, soporta algunas de las novedades más importantes introducidas en Java 5, como los generics o el tipo <code>enum</code>. Este decompilador cuenta con dos interfaces, una aplicación standalone llamada JD-GUI y un plugin para Eclipse llamado JD-Eclipse.</p>
<p>Vamos a crear una pequeña clase de ejemplo para demostrar su funcionamiento.<span id="more-2861"></span></p>
<pre name="code" class="java">import java.util.EnumSet;

public class Ejemplo {
  enum Dia {
    LUNES, MARTES, MIERCOLES, JUEVES, VIERNES, SABADO, DOMINGO
  }

  public static void main(String[] args) {
    for (Dia dia : EnumSet.allOf(Dia.class))
      System.out.println(dia);
  }
}</pre>
<p>Si abrimos la vista de navegador en Eclipse (Window -> Show View -> Navigator) y hacemos doble clic sobre el archivo que representa a nuestra clase compilada en la carpeta bin, se lanzará el visor de clases, mostrando el bytcode de la clase. También podemos utilizar la herramienta javap, incluída en el JDK:</p>
<p class="code">javap -c Ejemplo</p>
<p>El bytecode de nuestra clase tiene el siguiente aspecto:</p>
<pre name="code" class="java">// Compiled from Ejemplo.java (version 1.6 : 50.0, super bit)
public class Ejemplo {

  // Method descriptor #6 ()V
  // Stack: 1, Locals: 1
  public Ejemplo();
    0  aload_0 [this]
    1  invokespecial java.lang.Object() [8]
    4  return
      Line numbers:
        [pc: 0, line: 3]
      Local variable table:
        [pc: 0, pc: 5] local: this index: 0 type: Ejemplo

  // Method descriptor #15 ([Ljava/lang/String;)V
  // Stack: 2, Locals: 3
  public static void main(java.lang.String[] args);
     0  ldc &lt;Class Ejemplo$Dia&gt; [16]
     2  invokestatic java.util.EnumSet.allOf(java.lang.Class) : java.util.EnumSet [18]
     5  invokevirtual java.util.EnumSet.iterator() : java.util.Iterator [24]
     8  astore_2
     9  goto 29
    12  aload_2
    13  invokeinterface java.util.Iterator.next() : java.lang.Object [28] [nargs: 1]
    18  checkcast Ejemplo$Dia [16]
    21  astore_1 [dia]
    22  getstatic java.lang.System.out : java.io.PrintStream [34]
    25  aload_1 [dia]
    26  invokevirtual java.io.PrintStream.println(java.lang.Object) : void [40]
    29  aload_2
    30  invokeinterface java.util.Iterator.hasNext() : boolean [46] [nargs: 1]
    35  ifne 12
    38  return
      Line numbers:
        [pc: 0, line: 9]
        [pc: 22, line: 10]
        [pc: 29, line: 9]
        [pc: 38, line: 11]
      Local variable table:
        [pc: 0, pc: 39] local: args index: 0 type: java.lang.String[]
        [pc: 22, pc: 29] local: dia index: 1 type: Ejemplo.Dia
      Stack map table: number of frames 2
        [pc: 12, full, stack: {}, locals: {java.lang.String[], _, java.util.Iterator}]
        [pc: 29, same]

  Inner classes:
    [inner class info: #16 Ejemplo$Dia, outer class info: #1 Ejemplo
     inner name: #59 Dia, accessflags: 16408 static final]
}</pre>
<p>Como vemos en realidad el bucle for each se convierte en un bucle que utiliza un iterador.</p>
<p>Si usamos el decompilador jad el resultado será:</p>
<pre name="code" class="java">import java.io.PrintStream;
import java.util.EnumSet;
import java.util.Iterator;

public class Ejemplo {
  static final class Dia extends Enum {
    public static Dia[] values() {
      Dia adia[];
      int i;
      Dia adia1[];
      System.arraycopy(adia = ENUM$VALUES, 0,
          adia1 = new Dia[i = adia.length], 0, i);
      return adia1;
    }

    public static Dia valueOf(String s) {
      return (Dia) Enum.valueOf(Ejemplo$Dia, s);
    }

    public static final Dia LUNES;
    public static final Dia MARTES;
    public static final Dia MIERCOLES;
    public static final Dia JUEVES;
    public static final Dia VIERNES;
    public static final Dia SABADO;
    public static final Dia DOMINGO;
    private static final Dia ENUM$VALUES[];

    static {
      LUNES = new Dia("LUNES", 0);
      MARTES = new Dia("MARTES", 1);
      MIERCOLES = new Dia("MIERCOLES", 2);
      JUEVES = new Dia("JUEVES", 3);
      VIERNES = new Dia("VIERNES", 4);
      SABADO = new Dia("SABADO", 5);
      DOMINGO = new Dia("DOMINGO", 6);
      ENUM$VALUES = (new Dia[] { LUNES, MARTES, MIERCOLES, JUEVES,
          VIERNES, SABADO, DOMINGO });
    }

    private Dia(String s, int i) {
      super(s, i);
    }
  }

  public Ejemplo() {
  }

  public static void main(String args[]) {
    Dia dia;
    for (Iterator iterator = EnumSet.allOf(Ejemplo$Dia).iterator(); iterator
        .hasNext(); System.out.println(dia))
      dia = (Dia) iterator.next();
  }
}</pre>
<p>que como vemos no está demasiado mal, pero dista bastante del original.</p>
<p>Por último este es el resultado de JD-GUI:</p>
<pre name="code" class="java">import java.io.PrintStream;
import java.util.EnumSet;
import java.util.Iterator;

public class Ejemplo {
  public static void main(String[] args) {
    for (Iterator localIterator = EnumSet.allOf(Ejemplo.Dia.class)
        .iterator(); localIterator.hasNext();) {
      Ejemplo.Dia dia = (Ejemplo.Dia) localIterator.next();
      System.out.println(dia);
    }
  }

  static enum Dia {
    LUNES, MARTES, MIERCOLES, JUEVES, VIERNES, SABADO, DOMINGO;
  }
}</pre>
<link type="text/css" rel="stylesheet" href="http://mundogeek.net/sh/css/SyntaxHighlighter.css"></link>
<script language="javascript" src="http://mundogeek.net/sh/js/shCore.js"></script><br />
<script language="javascript" src="http://mundogeek.net/sh/js/shBrushJava.js"></script><br />
<script language="javascript">dp.SyntaxHighlighter.ClipboardSwf = 'http://mundogeek.net/sh/flash/clipboard.swf';
dp.SyntaxHighlighter.HighlightAll('code');</script></p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2009/03/28/decompilar-clases-java/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Mejora tu código Java con PMD</title>
		<link>http://mundogeek.net/archivos/2009/03/08/mejora-tu-codigo-java-con-pmd/</link>
		<comments>http://mundogeek.net/archivos/2009/03/08/mejora-tu-codigo-java-con-pmd/#comments</comments>
		<pubDate>Sun, 08 Mar 2009 14:58:56 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[codigo]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=2691</guid>
		<description><![CDATA[PMD es una herramienta que comprueba que nuestra aplicación cumpla una serie de reglas que nos ayudan a obtener un código más elegante, sencillo y mantenible. Estas reglas se agrupan por conjuntos y pueden ser reglas de complejidad, como que la complejidad ciclomática no sea demasiado alta; de diseño, como no usar interfaces como meros [...]]]></description>
			<content:encoded><![CDATA[<p>PMD es una herramienta que comprueba que nuestra aplicación cumpla una serie de reglas que nos ayudan a obtener un código más elegante, sencillo y mantenible. Estas reglas se agrupan por conjuntos y pueden ser reglas de complejidad, como que la complejidad ciclomática no sea demasiado alta; de diseño, como no usar interfaces como meros contenedores de constantes; de optimización, como procurar usar <code>ArrayList</code> en lugar de <code>Vector</code>; etc.</p>
<p>PMD se puede utilizar desde linea de comandos, o puede integrarse con multitud de IDEs y herramientas, como Eclipse, NetBeans, Maven o JEdit. Y aunque algunos de los casos que comprueba PMD ya se tengan en cuenta en Eclipse, sigue siendo una utilidad muy interesante para añadir a nuestra caja de herramientas.<br />
<span id="more-2691"></span><br />
Para instalar el plugin de PMD para Eclipse tenemos que añadir la URL desde la que actualizar el software, http://pmd.sourceforge.net/eclipse, en el diálogo Help -> Software updates -> Available Software -> Add Site, marcar el componente correspondiente dependiendo de nuestra versión de Eclipse y seleccionar Install.</p>
<p>Una vez terminado el proceso podremos gestionar las reglas de PMD desde Window -> Preferences -> PMD -> Rules Configuration. En la misma sección también podemos añadir nuevas reglas utilizando consultas XPath.</p>
<p>Al instalar PMD tendremos acceso a una nueva perspectiva a la que podemos acceder desde Window -> Open Perspective -> Other -> PMD. Para empezar a utilizar PMD haremos clic con el botón derecho sobre el proyecto, el paquete o la clase que queramos comprobar y seleccionaremos PMD -> Check code with PMD.</p>
<p>En la vista Violations Overview podremos ver un resumen de las reglas que incumple nuestro código, con el nombre de la regla, el número de violaciones por paquete, clase y método y el número de violaciones cada 1000 líneas de código.</p>
<p>En Violations Outline podremos ver una pequeña descripción de la regla que rompe nuestro código, asi como la línea de código en el que se encontró el error. Si hacemos clic sobre una de las entradas de la lista se abrirá la clase correspondiente en la línea a corregir. Si necesitamos más información sobre el error podemos hacer clic sobre este y seleccionar Show Details, donde podremos consultar una descripción completa de la regla, asi como ejemplos y la expresión XPath utilizada.</p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2009/03/08/mejora-tu-codigo-java-con-pmd/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Eclipse y estándares de código</title>
		<link>http://mundogeek.net/archivos/2009/03/03/eclipse-y-estandares-de-codigo/</link>
		<comments>http://mundogeek.net/archivos/2009/03/03/eclipse-y-estandares-de-codigo/#comments</comments>
		<pubDate>Tue, 03 Mar 2009 11:10:34 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[codigo]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[estandares]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[programacion]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=2651</guid>
		<description><![CDATA[Si sueles trabajar en equipo a la hora de programar, e incluso si no es el caso, puede ser interesante establecer unos estándares a seguir a la hora de escribir el código. Para asegurarnos de que estas reglas se siguen se puede utilizar, por ejemplo, Checkstyle, que se integra en Eclipse a través del plugin [...]]]></description>
			<content:encoded><![CDATA[<p>Si sueles trabajar en equipo a la hora de programar, e incluso si no es el caso, puede ser interesante establecer unos estándares a seguir a la hora de escribir el código. Para asegurarnos de que estas reglas se siguen se puede utilizar, por ejemplo, <a href="http://checkstyle.sourceforge.net/">Checkstyle</a>, que se integra en Eclipse a través del <a href="http://eclipse-cs.sourceforge.net/">plugin</a> del mismo nombre.</p>
<p>La forma más sencilla de instalar este plugin es utilizar el sistema de actualizaciones de software de Eclipse. En el diálogo Help -> Software updates -> Available Software -> Add Site introducimos la URL desde la que instalar el plugin, &#8220;http://eclipse-cs.sourceforge.net/update&#8221;, marcamos nuestra nueva fuente y seleccionamos Install.<span id="more-2651"></span></p>
<p>Si entramos ahora en Window -> Preferences ->Checkstyle veremos las opciones de configuración relativas a Checkstyle. Como vemos en Global Check Configurations, Checkstyle utiliza por defecto las convenciones de la guía de estilo de Sun (Sun Checks), pero podemos editarlas o crear un nuevo conjunto de reglas fácilmente. El plugin también incluye un conjunto de normas basadas en las convenciones de Sun, ligeramente modificadas para adaptarse mejor a la configuración por defecto del formateador de código de Eclipse: Sun Checks (Eclipse).</p>
<p>Para activar Checkstyle para uno de nuestros proyectos haremos clic con el botón derecho sobre él, seleccionaremos Properties y en la sección dedicada a Checkstyle marcaremos Checkstyle active for this project. En esta sección podemos seleccionar también el conjunto de normas que nuestro proyecto debe de seguir, asi como posibles excepciones.</p>
<p>Una vez activado Checkstyle para el proyecto veremos los Warnings relativos a los estándares de código en la vista Problems, así como en el propio editor, donde las advertencias se muestran con fondo amarillo. También podemos recurrir a la vista Checkstyle violations (Window -> Show view -> Checkstyle -> Checkstyle violations), que está más especializada y permite agrupar los problemas, generar informes en formato rtf, y lanzar la vista Checkstyle violations chart, con un gráfico de tarta con los distintos problemas encontrados en el código.</p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2009/03/03/eclipse-y-estandares-de-codigo/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Subclipse: plugin de Subversion para Eclipse</title>
		<link>http://mundogeek.net/archivos/2009/02/22/subclipse-plugin-de-subversion-para-eclipse/</link>
		<comments>http://mundogeek.net/archivos/2009/02/22/subclipse-plugin-de-subversion-para-eclipse/#comments</comments>
		<pubDate>Sun, 22 Feb 2009 16:20:59 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[cvs]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[programacion]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[svn]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=2579</guid>
		<description><![CDATA[Probablemente Subclipse sea el plugin para integrar Subversion con Eclipse más utilizado del mercado, por encima del plugin &#8220;oficial&#8221;, Subversive, aunque son muy parecidos. Sin embargo ambos están lejos de la popularidad de otras alternativas independientes como TortoiseSVN, por razones evidentes. Para instalar Subclipse podemos usar el sistema de actualizaciones de software de Eclipse: abrimos [...]]]></description>
			<content:encoded><![CDATA[<p>Probablemente <a href="http://subclipse.tigris.org/" title="Subclipse: plugin de Subversion para Eclipse">Subclipse</a> sea el plugin para integrar <a href="http://mundogeek.net/archivos/2004/06/26/qu-es-un-cvs-instalacin-de-subversion/" title="¿Qué es un sistema de control de versiones? Instalación de Subversion">Subversion</a> con Eclipse más utilizado del mercado, por encima del plugin &#8220;oficial&#8221;, <a href="http://www.polarion.org/index.php?page=overview&#038;project=subversive" title="Subversive: plugin de Subversion para Eclipse">Subversive</a>, aunque son muy parecidos. Sin embargo ambos están lejos de la popularidad de otras alternativas independientes como <a href="http://mundogeek.net/archivos/2004/06/26/un-cliente-de-subversion-grfico-tortoisesvn/" title="TortoiseSVN">TortoiseSVN</a>, por razones evidentes.</p>
<p><img src="http://mundogeek.net/wp-content/eclipse-svn-subclipse.png" alt="Subclipse: plugin de Subversion para Eclipse" title="Subclipse: plugin de Subversion para Eclipse"/><br />
<span id="more-2579"></span><br />
Para instalar Subclipse podemos usar el sistema de actualizaciones de software de Eclipse: abrimos el diálogo Help -> Software updates -> Available Software -> Add Site e introducimos la URL desde la que instalar el plugin, en este caso, para la última versión al escribir estas líneas, &#8220;http://subclipse.tigris.org/update_1.4.x&#8221;. Marcamos nuestra nueva fuente y seleccionamos Install. Tendremos que aceptar la licencia del plugin, que se descargará desde la web correspondiente y se instalará automáticamente.</p>
<p>Una vez instalado Subclipse lo primero que tenemos que hacer para comenzar a trabajar con Subversion es abrir la perspectiva SVN Repository Exploring desde Window -> Open perspective -> Other -> SVN Repository Exploring, o bien mostrar la vista de repositorios de SVN haciendo clic sobre Window -> Show View -> Other -> SVN -> SVN Repositories. Para añadir un nuevo repositorio haremos clic con el botón derecho sobre SVN Repositories y seleccionaremos New -> Repository Location, donde introduciremos la URL del repositorio.</p>
<p>Por supuesto si vamos a utilizar nuestro propio repositorio en local tendremos que <a href="http://subversion.tigris.org/getting.html" title="Descargar Subversion">descargar</a> e instalar el servidor de Subversion primero. Si no tienes experiencia te recomiendo la distribución <a href="http://www.visualsvn.com/server/" title="VisualSVN">VisualSVN</a> (Windows) que incluye una herramienta de gestión gráfica que lo hace todo muy sencillo.</p>
<p>Una vez añadido nuestro repositorio podemos hacer un checkout del código almacenado en él haciendo clic con el botón derecho sobre él y seleccionando Checkout, añadir un proyecto ya existente a un repositorio haciendo clic con el botón derecho sobre el proyecto y seleccionando Team -> Share Project, hacer un commit haciendo clic con el botón derecho sobre el proyecto y seleccionando Team -> Commit, &#8230; Como vemos, todo muy rápido y sencillo, y sin tener que abandonar por un momento nuestro IDE.</p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2009/02/22/subclipse-plugin-de-subversion-para-eclipse/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Eclipse y Tomcat</title>
		<link>http://mundogeek.net/archivos/2009/02/02/eclipse-y-tomcat/</link>
		<comments>http://mundogeek.net/archivos/2009/02/02/eclipse-y-tomcat/#comments</comments>
		<pubDate>Mon, 02 Feb 2009 16:29:41 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[j2ee]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[jee]]></category>
		<category><![CDATA[tomcat]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://mundogeek.net/?p=2434</guid>
		<description><![CDATA[Antiguamente si queríamos integrar Tomcat en Eclipse teníamos que recurrir a algún plugin, como Sysdeo Eclipse Tomcat Launcher. Actualmente, con Eclipse Ganymede (Eclipse 3.4) eso ya no es necesario y podemos iniciar y parar Tomcat o depurar el código desde Eclipse. Veamos los pasos a seguir para lograr esta interacción. Descargamos Eclipse desde su página [...]]]></description>
			<content:encoded><![CDATA[<p>Antiguamente si queríamos integrar Tomcat en Eclipse teníamos que recurrir a algún plugin, como Sysdeo Eclipse Tomcat Launcher. Actualmente, con Eclipse Ganymede (Eclipse 3.4) eso ya no es necesario y podemos iniciar y parar Tomcat o depurar el código desde Eclipse.</p>
<p><img src="http://mundogeek.net/wp-content/eclipse-tomcat.png" alt="Eclipse y Tomcat" title="Eclipse y Tomcat"/></p>
<p>Veamos los pasos a seguir para lograr esta interacción.<span id="more-2434"></span></p>
<ol>
<li><a href="http://www.eclipse.org/downloads/">Descargamos Eclipse</a> desde su página web. La versión que nos interesa, dado que vamos a desarrollar con JEE, es la llamada Eclipse IDE for Java EE Developers (163 MB)</li>
<li>Descargamos y descomprimimos el zip de la última versión core de <a href="http://tomcat.apache.org/download-60.cgi">Tomcat</a>.</li>
<li>Iniciamos Eclipse. Nos dirigimos a Window -> Preferences -> Server -> Runtime Environment, pulsamos Add y seleccionamos nuestra versión de Tomcat. Marcamos Create a new local server si no está seleccionado.</li>
<li>Pulsamos Next y buscamos el directorio en el que instalamos Tomcat. Pulsamos Finish y OK. El nuevo servidor debería mostrarse en la pestaña Servers. También se habrá creado un proyecto nuevo Servers con los archivos de configuración de nuestra instancia de Tomcat.</li>
<li>Ahora vamos a probar el servidor creando una pequeña aplicación web. Seleccionamos File -> New -> Dynamic Web Project, rellenamos el nombre que queramos darle a la aplicación y pulsamos Finish.</li>
<li>Hacemos clic con el botón derecho sobre la carpeta WebContent de nuestro nuevo proyecto y seleccionamos New -> JSP. Le damos como nombre index.jsp y pulsamos Finish. No necesitamos hacer nada más, puesto que el descriptor de despliegue que se crea por defecto ya indica que index.jsp es uno de los welcome-file.</li>
<li>Sustituimos el contenido de index.jsp por el siguiente, que debería mostrar la cabecera User-Agent, con la información del navegador</li>
<pre name="code" class="html">&lt;html&gt;
&lt;body&gt;
Tu navegador es &lt;%= request.getHeader("user-agent") %&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<li>Arrastramos el proyecto desde el explorador de proyectos al servidor Tomcat en la pestaña Servers para asociarlo.</li>
<li>Hacemos clic con el botón derecho sobre el servidor y seleccionamos Start.</li>
<li>Abrimos la página http://localhost:8080/<em>nombre_aplicacion</em>/. Si todo ha funcionado correctamente deberíamos ver nuestro user-agent en pantalla</li>
<li>Desarrollamos nuestra aplicación usando <a href="http://mundogeek.net/archivos/2007/01/25/jsp-javaserver-pages/">JSP</a>, <a href="http://mundogeek.net/archivos/2007/01/26/servlets/">Servlets</a>, <a href="http://mundogeek.net/archivos/2007/01/27/jdbc/">JDBC</a>, <a href="http://mundogeek.net/archivos/2007/01/27/hibernate/">Hibernate</a>, o cualquier otra tecnología que nos interese.</li>
<li>Una vez terminada la aplicación solo resta crear un archivo WAR para poder distribuirla fácilmente. Hacemos clic con el botón derecho sobre nuestro proyecto, seleccionamos Export -> WAR File, e introducimos el nombre a utilizar y la ruta en la que queramos guardar el WAR.</li>
</ol>
<link type="text/css" rel="stylesheet" href="http://mundogeek.net/sh/css/SyntaxHighlighter.css"/>
<script language="javascript" src="http://mundogeek.net/sh/js/shCore.js"/>
<script language="javascript" src="http://mundogeek.net/sh/js/shBrushPython.js"/>
<script language="javascript">dp.SyntaxHighlighter.ClipboardSwf = 'http://mundogeek.net/sh/flash/clipboard.swf';
dp.SyntaxHighlighter.HighlightAll('code');</script></p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2009/02/02/eclipse-y-tomcat/feed/</wfw:commentRss>
		<slash:comments>34</slash:comments>
		</item>
		<item>
		<title>Eclox, Doxygen en Eclipse</title>
		<link>http://mundogeek.net/archivos/2007/01/22/eclox-doxygen-en-eclipse/</link>
		<comments>http://mundogeek.net/archivos/2007/01/22/eclox-doxygen-en-eclipse/#comments</comments>
		<pubDate>Mon, 22 Jan 2007 19:45:10 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[documentacion]]></category>
		<category><![CDATA[doxygen]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[programacion]]></category>

		<guid isPermaLink="false">http://mundogeek.net/archivos/2007/01/22/eclox-doxygen-en-eclipse/</guid>
		<description><![CDATA[Para seguir con el tema de los comentarios en el código, os dejo este enlace a un pequeño plugin que integra el sistema de documentación que suelo utilizar últimamente (Doxygen) en Eclipse. Eclox permite crear archivos doxyfile con la configuración a utilizar a la hora de generar la documentación y crear la documentación con un [...]]]></description>
			<content:encoded><![CDATA[<p>Para seguir con el tema de los comentarios en el código, os dejo este enlace a un pequeño plugin que integra el sistema de documentación que suelo utilizar últimamente (<a href="http://www.stack.nl/~dimitri/doxygen/" title="Doxygen, documentación multi lenguaje en diversos formatos">Doxygen</a>) en <a href="http://www.eclipse.org/" title="Eclipse, IDE multi lenguaje y multi plataforma">Eclipse</a>. <a href="http://home.gna.org/eclox/" title="Eclox, Doxygen en Eclipse">Eclox</a> permite crear archivos doxyfile con la configuración a utilizar a la hora de generar la documentación y crear la documentación con un par de clics desde Eclipse.</p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2007/01/22/eclox-doxygen-en-eclipse/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Desarrollo con C/C++ en Eclipse</title>
		<link>http://mundogeek.net/archivos/2007/01/17/desarrollo-con-cc-en-eclipse/</link>
		<comments>http://mundogeek.net/archivos/2007/01/17/desarrollo-con-cc-en-eclipse/#comments</comments>
		<pubDate>Wed, 17 Jan 2007 11:25:24 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[cpp]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[programacion]]></category>

		<guid isPermaLink="false">http://mundogeek.net/archivos/2007/01/17/desarrollo-con-cc-en-eclipse/</guid>
		<description><![CDATA[Eclipse es uno de los IDEs más populares y utilizados en el mundo Java. Esto unido a la posibilidad de extender su funcionalidad por medio de plugins ha hecho que exista la posibilidad de poder programar en multitud de lenguajes usando esta herramienta. El plugin necesario para desarrollar en C/C++ con Eclipse se llama CDT [...]]]></description>
			<content:encoded><![CDATA[<p>Eclipse es uno de los IDEs más populares y utilizados en el mundo Java. Esto unido a la posibilidad de extender su funcionalidad por medio de plugins ha hecho que exista la posibilidad de poder programar en multitud de lenguajes usando esta herramienta.</p>
<p>El plugin necesario para desarrollar en C/C++ con Eclipse se llama CDT (C/C++ Development Tooling). Veamos como instalarlo.<span id="more-954"></span></p>
<h2>Instalar Eclipse</h2>
<p>El primer paso, evidentemente, es instalar Eclipse. Eclipse viene en forma de un archivo zip/tar.gz que podemos descargar desde <a href="http://www.eclipse.org/downloads/" title="Descargar Eclipse">la sección correspondiente de su web</a> pulsando sobre <em>Eclipse SDK 3.2.1</em> y eligiendo el mirror más cercano al lugar donde nos encontramos.</p>
<p>Una vez descargado basta con descomprimir en el directorio de nuestra elección.</p>
<h2>Instalar CDT</h2>
<p>Descargamos la última versión para nuestro sistema operativo, la 3.1.1 a la hora de escribir estas líneas, desde la <a href="http://www.eclipse.org/cdt/downloads.php" title="Descargar CDT">página de descargas del proyecto</a>. El plugin no es más que un archivo zip/tar.gz que deberemos descomprimir en la carpeta de Eclipse, añadiendo así los archivos correspondientes a las carpetas features y plugins.</p>
<p>Si ejecutamos Eclipse ahora entre las perspectivas que podemos seleccionar (Window -> Open Perspective -> Other) tendremos una dedicada a C/C++. Para crear un nuevo proyecto seleccionaremos File -> New -> Managed Make C Project o Managed Make C++ Project dependiendo del lenguaje a utilizar. En los proyectos &#8220;managed&#8221; (gestionados), a diferencia de los standards, Eclipse se ocupa de generar un makefile por nosotros.</p>
<p>Lo único que nos falta es, claro está, un compilador con el que generar los binarios. En Linux normalmente suelen estar instalados gcc y g++. En Windows necesitaremos instalarlos, bien usando MinGW o usando Cygwin.</p>
<h2>Instalar Cygwin</h2>
<p><a href="http://cygwin.com/setup.exe" title"Descargar Cygwin">Descargamos el instalador</a> desde la web de Cygwin. Al ejecutarlo nos preguntará si queremos instalar desde internet, descargando los archivos necesarios desde la web (Install from Internet); descargar los archivos pero no instalarlos (Download Without Installing) o instalar usando paquetes previamente descargados que tenemos en una cierta carpeta (Install from Local Directory). Si es la primera vez que instalamos Cygwin, seleccionaremos Install from the Internet.</p>
<p>Se nos preguntará también dónde instalarlo (C:\Cygwin está bien, no queremos rutas que contengan espacios), el directorio donde descargar los paquetes y el mirror desde el que deseamos descargarlos. Por último no tendremos más que seleccionar los paquetes a descargar y pulsar siguiente para que comience la descarga e instalación (si no sabes muy bien lo que vas a necesitar, te aconsejaría que descargaras todos los binarios de la rama Base y Devel).</p>
<p>Una vez instalado, añadiremos el directorio bin de la distribución al path, de forma que se pueda llamar a los binarios desde cualquier carpeta de Windows: botón derecho sobre Mi Pc -> Propiedades, Opciones Avanzadas -> Variables de Entorno, en Variables del sistema hacemos doble clic sobre Path y añadimos al final de Valor de variable <em>;c:\cygwin\bin</em> (el ; es para separar distintas entradas). Podemos comprobar que lo hemos hecho correctamente abriendo una ventana de línea de comandos (Inicio -> Ejecutar, escribimos cmd) y escribiendo <em>gcc -v</em>.</p>
<h2>Instalar Simple Indent</h2>
<p>A estas alturas de tutorial ya estaríamos listos para empezar a trabajar con C/C++ en Eclipse, pero para hilar fino vamos a instalar otro plugin que nos permitirá dar formato a los archivos .c, .cpp y .h con un simple Ctrl + F; se trata de Simple Indent. Simple Indent utiliza astyle para formatear el código, así que tendremos que tenerlo instalado en el sistema (no os preocupeis porque viene como parte de Cygwin).</p>
<p>La instalación es tan sencilla como <a href="http://softwitch.net/eclipseUpdate/plugins/net.softwitch.simpleIndent_1.1.0.jar" title="Descargar Simple Indent 1.1.0">descargar el archivo .jar correspondiente</a> y copiarlo a la carpeta plugins de Eclipse. Una vez que iniciemos el programa podremos seleccionar SimpleCodeFormatter en Windows -> Preferences -> C/C++ -> Code Formatter y cambiar las opciones del programa y la ruta donde encontrarlo en Simple Indent Preferences (como es el estilo al que estoy acostumbrado a mí me gusta tener <em>&#8211;style=java</em>, pero entre los predefinidos teneis para elegir ansi, gnu, kr y linux; podeis ver más información escribiendo astyle -h en la línea de comandos).</p>
<h2>Programando con C/C++ en Eclipse</h2>
<p>Como ya dijimos, para crear un nuevo proyecto en C/C++ en Eclipse seleccionamos File -> New -> Managed Make C Project o Managed Make C++ Project. Solo tenemos que escribir un nombre para el proyecto y podemos pulsar sobre Finish, porque normalmente no necesitaremos tocar ninguna de las otras opciones.</p>
<p>Para añadir un nuevo archivo al proyecto pulsamos con el botón derecho sobre el proyecto y seleccionamos New -> Source File o Header File.</p>
<p>La compilación la realiza Eclipse automaticamente, creando un archivo ejecutable en la carpeta Release o Debug, aunque tendremos que indicarle al linker dónde se encuentran las librerías que va a necesitar haciendo clic con el botón derecho sobre el proyecto, Properties -> C/C++ Build -> Tool Settings -> GCC C Linker -> Libraries y añadiendo el directorio &#8220;C:\cygwin\lib\gcc-lib\i686-pc-mingw32\3.3.3&#8243; en Library search path (seleccionamos Debug en Configuration y volvemos a hacer lo mismo).</p>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2007/01/17/desarrollo-con-cc-en-eclipse/feed/</wfw:commentRss>
		<slash:comments>68</slash:comments>
		</item>
		<item>
		<title>EasyEclipse</title>
		<link>http://mundogeek.net/archivos/2006/06/05/easyeclipse/</link>
		<comments>http://mundogeek.net/archivos/2006/06/05/easyeclipse/#comments</comments>
		<pubDate>Mon, 05 Jun 2006 14:22:29 +0000</pubDate>
		<dc:creator>Zootropo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[ide]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[programacion]]></category>

		<guid isPermaLink="false">http://mundogeek.net/archivos/2006/06/05/easyeclipse/</guid>
		<description><![CDATA[El proyecto EasyEclipse consiste en una serie de instaladores que incluyen el que posiblemente sea el mejor IDE que existe, junto a distintos plugins útiles para programar en un determinado lenguaje (Java, LAMP, PHP, Python o Ruby on Rails). En la misma web también están disponibles otros plugins que instalar de forma sencilla. Visto hace [...]]]></description>
			<content:encoded><![CDATA[<p>El proyecto <a href="http://www.easyeclipse.org" title="EasyEclipse">EasyEclipse</a> consiste en <a href="http://www.easyeclipse.org/site/distributions/index.html" title="Distintas versiones de EasyEclipse">una serie de instaladores</a> que incluyen el que posiblemente sea el mejor IDE que existe, junto a distintos plugins útiles para programar en un determinado lenguaje (Java, LAMP, PHP, Python o Ruby on Rails). En la misma web también están disponibles <a href="http://www.easyeclipse.org/site/plugins/index.html" title="Plugins para Eclipse">otros plugins</a> que instalar de forma sencilla.</p>
<p><a href="http://www.downloadsquad.com/2006/05/30/easyeclipse/" title="EasyEclipse">Visto hace unos días en Download Squad</a>.</p>
<div align="center"><img src="http://mundogeek.net/wp-content/easy-eclipse.png" alt="EasyEclipse" title="EasyEclipse"/></div>
]]></content:encoded>
			<wfw:commentRss>http://mundogeek.net/archivos/2006/06/05/easyeclipse/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
	</channel>
</rss>

