<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Java on Michele Bologna</title>
    <link>https://www.michelebologna.net/tags/java/</link>
    <description>Recent content in Java on Michele Bologna</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Tue, 31 Jan 2017 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://www.michelebologna.net/tags/java/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Checkstyle and DetailAST</title>
      <link>https://www.michelebologna.net/2017/checkstyle-and-detailast/</link>
      <pubDate>Tue, 31 Jan 2017 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2017/checkstyle-and-detailast/</guid>
      <description>&lt;p&gt;If you are running &lt;a href=&#34;http://checkstyle.sourceforge.net/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Checkstyle&lt;/a&gt; (for checking Java style) and you are stuck with this error:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;checkstyle:&#xA;[checkstyle] Running Checkstyle 6.11.2 on 2324 files&#xA;[checkstyle] Can&amp;#39;t find/access AST Node typecom.puppycrawl.tools.checkstyle.api.DetailAST&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;which is a cryptic error with no whatsoever Google result on how to fix it, stand back: I have the solution!&lt;/p&gt;</description>
    </item>
    <item>
      <title>ZeroTurnaround&#39;s Java Tools and Technologies Landscape Report 2016</title>
      <link>https://www.michelebologna.net/2016/zeroturnarounds-java-tools-and-technologies-landscape-report-2016/</link>
      <pubDate>Sat, 16 Jul 2016 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2016/zeroturnarounds-java-tools-and-technologies-landscape-report-2016/</guid>
      <description>&lt;p&gt;As of every year, ZeroTurnaround released the &lt;a href=&#34;http://zeroturnaround.com/rebellabs/java-tools-and-technologies-landscape-2016/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;strong&gt;yearly report of their survey about Java and Java-related technologies among professional developers&lt;/strong&gt;&lt;/a&gt;. I find this report very interesting, and I usually compare (or &lt;em&gt;discover&lt;/em&gt;) existing technology solutions.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Convert Java to EXE - Why, When, When Not and How</title>
      <link>https://www.michelebologna.net/2015/convert-java-to-exe-why-when-when-not-and-how/</link>
      <pubDate>Mon, 17 Aug 2015 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2015/convert-java-to-exe-why-when-when-not-and-how/</guid>
      <description>&lt;p&gt;Today I come across this great article on the various possibilities we have, as developers, to package a Java application in an executable format for all Windows users out there. I have always used &lt;a href=&#34;http://jsmooth.sourceforge.net/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;JSmooth&lt;/a&gt; with success, but it is nice to discover there are more alternatives (and some of them are OSS too!).&lt;/p&gt;</description>
    </item>
    <item>
      <title>OSX: Eclipse e Java 7 (senza Java 6)</title>
      <link>https://www.michelebologna.net/2014/osx-eclipse-e-java-7-senza-java-6/</link>
      <pubDate>Thu, 13 Feb 2014 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2014/osx-eclipse-e-java-7-senza-java-6/</guid>
      <description>&lt;p&gt;Ok, avete installato OSX Mavericks e avete notato che il vostro sistema operativo è sprovvisto di una JVM (finalmente OSX non &lt;em&gt;shippa&lt;/em&gt; più con la JVM fornita da Apple).&lt;/p&gt;&#xA;&lt;p&gt;Nessuna paura, &lt;a href=&#34;https://www.michelebologna.net/2012/05/installare-oracle-jdk-java-7-su-macosx/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;le istruzioni per installare la JVM/JDK di Oracle sono ancora valide&lt;/a&gt;. Ma adesso volete utilizzare Eclipse, che vuole che installiate la &lt;em&gt;vecchia&lt;/em&gt; JDK 6 (quella fornita da Apple per intenderci).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tutte le novità di Java 7</title>
      <link>https://www.michelebologna.net/2013/tutte-le-novita-di-java-7/</link>
      <pubDate>Sun, 10 Feb 2013 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2013/tutte-le-novita-di-java-7/</guid>
      <description>&lt;p&gt;A metà 2011 è stata rilasciata la versione 7 di &lt;strong&gt;&lt;a href=&#34;https://java.oracle.com/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Java&lt;/a&gt;&lt;/strong&gt; [nickname &lt;em&gt;Dolphin&lt;/em&gt;]. Due sono le grandi novità di questo rilascio:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Java è ora marchiata Oracle (che ha acquisito Sun)&lt;/li&gt;&#xA;&lt;li&gt;La reference implementation è ora &lt;a href=&#34;http://openjdk.java.net/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;OpenJDK&lt;/a&gt; (l&amp;rsquo;implementazione open-source di Java), mentre per le passate versioni rimane HotSpot, la versione di Sun Oracle.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Le novità più interessanti, dal punto di vista delle API, sono:&lt;/p&gt;</description>
    </item>
    <item>
      <title>FizzBuzz reloaded: le differenze tra Java e Ruby</title>
      <link>https://www.michelebologna.net/2012/fizzbuzz-reloaded-le-differenze-tra-java-e-ruby/</link>
      <pubDate>Tue, 27 Nov 2012 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2012/fizzbuzz-reloaded-le-differenze-tra-java-e-ruby/</guid>
      <description>&lt;p&gt;Tempo fa vi ho parlato di &lt;a href=&#34;https://www.michelebologna.net/2012/03/fizzbuzz-una-sfida-per-programmatori/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;FizzBuzz&lt;/a&gt;, un quiz spesso posto ai programmatori alle prime armi.&lt;/p&gt;&#xA;&lt;p&gt;Una variante è la seguente:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Sommare tutti i numeri da 1 a 200 che non sono multipli di 4 e di 7&lt;/p&gt;</description>
    </item>
    <item>
      <title>jVisualVM: il profiler Java incluso nella JDK</title>
      <link>https://www.michelebologna.net/2012/jvisualvm-il-profiler-java-incluso-nella-jdk/</link>
      <pubDate>Sat, 21 Jul 2012 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2012/jvisualvm-il-profiler-java-incluso-nella-jdk/</guid>
      <description>&lt;p&gt;Mi sono recentemente trovato a dover fare del profiling di prestazioni di un software Java SE. Tra le varie &lt;a href=&#34;https://en.wikipedia.org/wiki/List_of_performance_analysis_tools#Java&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;opzioni che avevo a disposizione per il profiling in ambito Java&lt;/a&gt;, ho scelto &lt;strong&gt;&lt;a href=&#34;https://visualvm.github.io/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;jVisualVM&lt;/a&gt;&lt;/strong&gt;&lt;a href=&#34;https://visualvm.github.io/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;/a&gt; inizialmente perché già incluso nella JVM (a partire dalla versione 1.6, tutte le Sun Java JDK includono il profiler).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Installare Oracle JDK Java 7 su MacOSX</title>
      <link>https://www.michelebologna.net/2012/installare-oracle-jdk-java-7-su-macosx/</link>
      <pubDate>Thu, 31 May 2012 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2012/installare-oracle-jdk-java-7-su-macosx/</guid>
      <description>&lt;p&gt;Abbiamo già visto come installare la Oracle &lt;a href=&#34;https://www.michelebologna.net/2012/04/installare-java-development-kit-7-jdk-7-su-ubuntu/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;JDK 7 su Ubuntu (e Linux)&lt;/a&gt;, ed oggi faremo la stessa cosa su &lt;strong&gt;MacOSX&lt;/strong&gt;. Su OSX il processo è molto più semplice: basta infatti scaricare il dmg (l&amp;rsquo;unico disponibile per MacOSX, ovvero quello a 64bit) dall&amp;rsquo;indirizzo ufficiale di Oracle e procedere all&amp;rsquo;installazione (system-wide).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Java: come scrivere un build.xml di ant per compilare e pacchettizzare (WAR/EAR)</title>
      <link>https://www.michelebologna.net/2011/java-come-scrivere-un-build-xml-di-ant-per-compilare-e-pacchettizzare-warear/</link>
      <pubDate>Tue, 19 Jul 2011 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2011/java-come-scrivere-un-build-xml-di-ant-per-compilare-e-pacchettizzare-warear/</guid>
      <description>&lt;p&gt;Come sapete, tutti i Java application server (come ad es. Tomcat) richiedono il deploy di un applicativo sottoforma di un pacchetto EAR. Ma come è composto un pacchetto EAR?&lt;/p&gt;&#xA;&lt;p&gt;Un pacchetto EAR non è altro che un file jar (che a sua volta è un file zip) che contiene al suo interno:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Eclipse: impostare un template per l&#39;inserimento di un Logger log4j</title>
      <link>https://www.michelebologna.net/2011/eclipse-impostare-un-template-per-linserimento-di-un-logger-log4j/</link>
      <pubDate>Tue, 22 Feb 2011 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2011/eclipse-impostare-un-template-per-linserimento-di-un-logger-log4j/</guid>
      <description>&lt;p&gt;Mi capita spesso, in Eclipse, di inserire il codice per abilitare il logging di una classe tramite log4j:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;private static Logger logger = Logger.getLogger(Klass.class);&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Utilizzano i templates, una funzionalità di Eclipse, possiamo evitare di riscrivere tutte le volte questa semplice istruzione. Per impostare un template, in Eclipse, è sufficiente recarsi su: Window &amp;gt; Preferences &amp;gt; Java &amp;gt; Editor &amp;gt; Templates e creiamo un nuovo template.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Linux: come installare Java Media Framework (JMF) evitando l&amp;rsquo;errore &amp;ldquo;tail: cannot open `&#43;309&#39; for reading: No such file or directory&amp;rdquo;</title>
      <link>https://www.michelebologna.net/2009/linux-come-installare-java-media-framework-jmf-evitando-lerrore-tail-cannot-open-309-for-reading-no-such-file-or-directory/</link>
      <pubDate>Wed, 29 Jul 2009 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2009/linux-come-installare-java-media-framework-jmf-evitando-lerrore-tail-cannot-open-309-for-reading-no-such-file-or-directory/</guid>
      <description>&lt;p&gt;Ultimamente ho dovuto installare il &lt;strong&gt;&lt;a href=&#34;https://www.oracle.com/technetwork/java/javase/tech/index-jsp-140239.html&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Java Media Framework&lt;/a&gt;&lt;/strong&gt; di Sun. Tralasciando che la libreria è obsoleta (ultima versione datata 2003) e (quindi) non più mantenuta, la documentazione è molto limitata (esempi banali), javadoc non completi e l’utilizzo(!) di AWT in alcune parti, ho deciso di provare ad installarla sulla mia macchina Linux. I passi che ho seguito sono i seguenti:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Come rendere Eclipse IDE pi&amp;ugrave; veloce e reattivo</title>
      <link>https://www.michelebologna.net/2009/come-rendere-eclipse-ide-pi-veloce-e-reattivo/</link>
      <pubDate>Tue, 12 May 2009 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2009/come-rendere-eclipse-ide-pi-veloce-e-reattivo/</guid>
      <description>&lt;p&gt;Ho sempre trovato Netbeans IDE molto più veloce e reattivo di Eclipse. Per rendere Eclipse più veloce, ho pensato di applicare le impostazioni della JVM con le quali Netbeans viene lanciato e applicarle ad &lt;a href=&#34;https://www.eclipse.org&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Eclipse&lt;/a&gt;. Ho ottenuto dei risultati molto buoni, in generale Eclipse ora è molto più veloce e scattante.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tecniche di progettazione agile con Java (design pattern, refactoring, test): la recensione</title>
      <link>https://www.michelebologna.net/2009/tecniche-di-progettazione-agile-con-java-design-pattern-refactoring-test-la-recensione/</link>
      <pubDate>Fri, 17 Apr 2009 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2009/tecniche-di-progettazione-agile-con-java-design-pattern-refactoring-test-la-recensione/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://www.michelebologna.net/images/2009/04/progettazioneagile.jpg&#34; &gt;&lt;img src=&#34;https://www.michelebologna.net/images/2009/04/progettazioneagile-thumb.jpg&#34; alt=&#34;Tecniche di Progettazione Agile con Java&#34; title=&#34;Tecniche di Progettazione Agile con Java&#34;&gt;&lt;/a&gt;In questi giorni ho letto un libro di &lt;a href=&#34;http://www.supsi.ch/home/strumenti/rubrica/dettaglio.6051.backLink.b328b222-c480-498b-a984-68fe0271f716.html&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Sandro Pedrazzini&lt;/a&gt; intitolato “Tecniche di progettazione agile con Java: design pattern, refactoring, test” (Ed. Tecniche nuove, 2006 – 29.90 €).&lt;/p&gt;</description>
    </item>
    <item>
      <title>10 cose da fare dopo aver installato Ubuntu Intrepid 8.10</title>
      <link>https://www.michelebologna.net/2009/10-cose-da-fare-dopo-aver-installato-ubuntu-intrepid-810/</link>
      <pubDate>Mon, 23 Feb 2009 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2009/10-cose-da-fare-dopo-aver-installato-ubuntu-intrepid-810/</guid>
      <description>&lt;p&gt;Ultimamente ho reinstallato Linux sulla mia macchina principale, dopo anni in cui lo tenevo relegato in una virtual machine in VMWare. La scelta della distribuzione è ovviamente caduta su Ubuntu Intrepid 8.10.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Apache Ant: Unable to locate tools.jar</title>
      <link>https://www.michelebologna.net/2008/apache-ant-unable-to-locate-toolsjar/</link>
      <pubDate>Mon, 25 Feb 2008 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2008/apache-ant-unable-to-locate-toolsjar/</guid>
      <description>&lt;p&gt;Se Ant si rifiuta di eseguire uno script di compilazione restituendo l&amp;rsquo;errore &amp;ldquo;Unable to locate tools.jar.&amp;rdquo; procedete in questo modo:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;create la variabile d&amp;rsquo;ambiente JAVA_HOME (su Windows: Risorse del computer -&amp;gt; Proprietà -&amp;gt; Avanzate -&amp;gt; Variabili d&amp;rsquo;ambiente -&amp;gt; Nuovo)&lt;/li&gt;&#xA;&lt;li&gt;impostate il valore di tale variabile al PATH del JDK (dipende dal vostro sistema, nel mio caso: C:\Programmi\Java\jdk1.6.0_03)&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Eclipse: le novità della versione Europa</title>
      <link>https://www.michelebologna.net/2007/eclipse-le-novita-della-versione-europa/</link>
      <pubDate>Fri, 27 Jul 2007 00:00:00 +0000</pubDate>
      <guid>https://www.michelebologna.net/2007/eclipse-le-novita-della-versione-europa/</guid>
      <description>&lt;p&gt;Come forse molti di voi sapranno, &lt;a href=&#34;https://www.eclipse.org&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Eclipse&lt;/a&gt; è il mio &lt;a href=&#34;https://en.wikipedia.org/wiki/IDE&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;IDE&lt;/a&gt; preferito. Recentemente, è stata rilasciata la versione 3.3 (&lt;em&gt;&amp;ldquo;Europa&amp;rdquo;&lt;/em&gt;), che integra ben 21 progetti (la lista completa dei progetti si può trovare &lt;a href=&#34;https://wiki.eclipse.org/index.php/Europa_Simultaneous_Release&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;qui&lt;/a&gt;).&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
