Sunday 15 November 2009

Building Jigsaw

Last updated: 2013-07-27

In preparation for Devoxx 09, I wanted to play a little with Jigsaw.
Thereafter are the few steps I have followed to build it (based on the build readme for Jigsaw but revised each time I build Jigsaw):


1. Create a new Ubuntu VM in VirtualBox
To download VirtualBox go here and to download Ubuntu (12.04 LTS or 13.04) go there.
I used 2Gb of RAM and 16 Gb of disk. (don't forget to install the guest additions and get the updates for Ubuntu)


2. Get and setup Mercurial
Open a console (Applications|Accessories|Terminal), type:
sudo apt-get install mercurial

3. Download and install the current build dependencies for OpenJDK7

sudo apt-get build-dep  openjdk-7

4. Download and install the current JDK7

sudo apt-get install openjdk-7-jdk

5. Download and install ccache
 This will speed up the build of native parts
sudo apt-get install ccache

6. Get Jigsaw sources
mkdir ~/dev
cd ~/dev/
hg clone http://hg.openjdk.java.net/jigsaw/jigsaw/ jigsaw
cd ~/dev/jigsaw/
chmod u+x get_source.sh
./get_source.sh

7. Set up the environement variablesSource encoding:

export LANG=C

8. Adjustments
2013-07-27, none.

9.  Configure
make sure to be in ~/dev/jigsaw and run:
cd ~/dev/jigsaw
bash configure

10.  make
time for cooking:
make images

11. post-build
Export a JIG enviroment variable to prefix your java commands and so use Jigsaw rather than the default openjdk:
64 bits vm:
export JIG=~/dev/jigsaw/build/linux-x86_64-normal-server-release/images/jdk-module-image/
or
32 bits vm:
 export JIG=~/dev/jigsaw/build/linux-x86-normal-server-release/images/jdk-module-image/
12. running Jigsaw?

$JIG/bin/java -version
should return something like:
openjdk version "1.8.0-internal"
OpenJDK Runtime Environment (build 1.8.0-internal-ludovic_2013_07_27_19_55-b00)
OpenJDK 64-Bit Server VM (build 25.0-b30, mixed mode)
and
$JIG/bin/jmod list -v
should return something like:
jdk@8-ea
  requires jdk.base@=8-ea
  requires public jdk.jre@=8-ea
  requires public jdk.tools@=8-ea

...

jdk.base@8-ea
  requires local optional jdk.desktop.internal@=8-ea
  requires optional jdk.jaxp@=8-ea
  requires local optional jdk.tls.internal@=8-ea
  requires local optional sun.charsets@=8-ea
  requires local optional sun.localedata@=8-ea
  requires local optional sun.resources@=8-ea
  provides java.base@8
  exports
    com.sun.nio.file
    com.sun.security.auth
    com.sun.security.auth.login
    java.beans
    java.io
    java.lang
    java.lang.annotation
    java.lang.invoke
    java.lang.module

...
running Jigsaw modules:

JPS:
$JIG/bin/java -m jdk.jps
or JConsole:
$JIG/bin/java -m jdk.jconsole
 Now is time to play...

Friday 13 November 2009

Devoxx 09

Devoxx 09

forseen schedule

Conference Day 1

Wednesday November 18th


9:30-11:30      Keynote
12:00-13:00    JDK7 Update
13:30-13:45    quickie OSGi Testing Pax Exam or Swing & OSGi - please play nice
14:00-15:00     James Gosling
15:10-16:10     JavaFX or The Java EE 6 Platform
16:40-17:40    ?
17:50-18:50    Project Coin or Animation Rules!
19:00-20:00    Java User Group BOF ?
20:00-21:00    Update JDK7

Conference Day 2

Thursday November 19th


9:30-11:30     Keynote
12:00-13:00   Using XML with Java: Spoilt for Choice? or Spring Framework 3.0
13:30-13:45   ?
14:00-15:00   Pro JavaFX - Developing Enterprise Applications
15:10-16:10   The JavaPosse.com Live
16:40-17:40   Detecting and preventing bugs with pluggable type-checking or Funky Java, Objective Scala or Deep dive on the Java EE 6 platform with GlassFish V3
17:50-18:50   The Modular Java Platform & Project Jigsaw or Maven Reloaded
19:00-20:00   JavaFX Futures
20:00-21:00   The Modular Java Platform and Project JigSaw ?
21:00-22:00   Maven3 BOF
or 2012 ?

Conference Day 3

Friday November 20th


9:30-10:30     Gaming JavaFX or Java and JavaFX Technology and the Nintendo Wiimote: Just How Much Fun Can You Have?
10:30-11:30   Towards A Universal VM or Modular Web Applications with OSGi
11:30-12:30    Project Lombok: Bye Bye Boilerplate

Sunday 11 January 2009

Worldclock 0.3 widget for WidgetFX 1.0

After a few issues upgrading to JavaFX 1.0 / WidgetFX 1.0 (the SwingComponent.wrap() does not quite do exactly the same thing as the old Component.fromJComponent(), at least for me the resize does not work exactly the same), I've released version 0.3 of the Worldclock widget.
Also in this release the possibility to enforce the aspect ratio of the world image(s).

Web page: https://worldclock-application.dev.java.net/#Widget
Direct launch: http://widgetfx.org/dock/launch.jnlp?arg=https://worldclock-application.dev.java.net/widget-webstart/launch.jnlp

Enjoy,