• Stars
    star
    284
  • Rank 145,616 (Top 3 %)
  • Language
    Java
  • License
    Creative Commons ...
  • Created about 9 years ago
  • Updated almost 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Examples and exercises based on some of the features of jigsaw in JDK9/Jigsaw (Early Access builds)

jdk9-jigsaw

Ver la versiΓ³n en EspaΓ±ol (See Spanish version)

Examples of some of the features of Jigsaw released in the Early Access build of JDK9.

Many of the examples here are directly from the Project Jigsaw: Module System Quick-Start Guide, see http://openjdk.java.net/projects/jigsaw/quick-start but we have also contributions from the Java community.


Please note you are in the master branch which contains exercises which need to be solved by looking at documentation or resources provided in this repo. Hints may be provided within the source or script files. If you hit a roadblock and really want to see a possible solution you can switch to the exercise-solutions branch for that.

Looking at the solutions can take away the challenge behind solving the exercises. Stay on the master branch in case you would like to continue to have fun solving the exercises and working through the challenges.


Setup (all platforms)

See Download, install and verify JDK and return to this page to continue with the rest of the steps.

Download and install git or git-bash

  • Ensure you have a git client installed on your local machine/VM/vagrant box, for Windows users git-bash is recommended

Download and install the tree and wget command

See Download and install tree and wget and return to this page to continue with the rest of the steps.

Vagrant box

(Optional) Install JDK 9 compliant IDE

  • Install the latest IDE (IntelliJ, Eclipse, NetBeans - paid or community version) that supports JDK 9 EA, once installed configure the IDE to pickup the JDK 9 EA installed in the previous steps.

See Download, install and configure Eclipse Oxygen for JDK9.

Other preparations

  • Get familiar with the command-line a bit as we will be using much of it during the weekend

  • Prepare your VMs or cloud instances with the above, in case your local machine is not up for any installation or configurations

Note: the bash files provided should work on Linux and in theory on the MacOS as well.

Windows users
  • if you use git-bash (recommended) or cgywin should work for you - run the .sh scripts in one of the the environments. In the worst case scenario, we would have to manually convert the .sh files into .bat, with minor tweaks should also work there. Happy to receive a pull request for it. Or you could use bach, a platform independent Java Shell Builder. It's usage is explained in session-3-jshell.
  • check if the literal JDK path (or %JAVA_HOME%) has been added to the PATH environment variable or add it manually
  • ensure the JDK is installed in a folder where the name does not have a space in it
  • in case folder name looks something C:\Program files..., ensure that (name does not contain spaces):
    • the path to the JDK in JAVA_HOME has C:\Program~1 instead of C:\Program files...
    • the environment variable PATH refers to the JAVA_HOME environment variable
    • the environment variable CLASSPATH refers to the JAVA_HOME environment variable
  • in some instances jlink was not yet available when JDK is installed via the .exe file, even after the above path settings were applied (please verify beforehand)
MacOSX users
  • jlink is not yet available when JDK is installed via the .dmg file (please verify beforehand)

Exercises / examples covered

Please ensure you have verified that the necessary JDK programs work in your environment with the help of the Download, install and verify JDK resource.

Each example is enclosed in a folder of its own containing bash scripts to compile, package and run the respective examples. Use these scripts for each of the examples.

Community contributions

See guidelines on how to contribute.

License

See License document to find out about the licensing terms and conditions.

Resources

Must reads

Other resources


I need you for Java SE 9 development

More Repositories

1

jitwatch

Log analyser / visualiser for Java HotSpot JIT compiler. Inspect inlining decisions, hot methods, bytecode, and assembly. View results in the JavaFX user interface.
Java
2,980
star
2

homebrew-openjdk

AdoptOpenJDK HomeBrew Tap
Ruby
1,828
star
3

openjdk-docker

Scripts for creating Docker images of OpenJDK binaries.
Slim
425
star
4

openjdk-jdk8u

JDK8u mirror from mercurial
Java
350
star
5

openjdk8-binaries

The new home for releases and nightlies for all OpenJDK8 variants and platforms
328
star
6

openjdk-jdk11

Mirror of the jdk/jdk11 Mercurial forest at OpenJDK
Java
242
star
7

jdk-api-diff

Creates a report of all API changes two JDK versions
Java
238
star
8

IcedTea-Web

The new home for IcedTea-Web
Java
211
star
9

openjdk11-binaries

The new home for releases and nightlies for all OpenJDK11 variants and platforms
197
star
10

openjdk8-upstream-binaries

Archived release scripts/releases of OpenJDK 8u project builds. Superseded by Eclipse Temurin releases.
Batchfile
153
star
11

openjdk-jdk11u

Mirror of the jdk-updates/jdk11u Mercurial forest at OpenJDK
Java
145
star
12

openjdk-website

Website source
Handlebars
121
star
13

openjdk-jdk

JDK TIP mirror from https://github.com/openjdk/jdk
Java
109
star
14

lambda-tutorial

Exercises to learn lambda syntax + the Streams API from the upcoming JDK 8 release
Java
108
star
15

mjprof

A monadic java profiler
Java
103
star
16

openjdk11-upstream-binaries

Archived release scripts/releases of OpenJDK 11u project builds. Superseded by Eclipse Temurin releases.
Batchfile
92
star
17

TSC

The AdoptOpenJDK Technical Steering Committee - Also acts as the knowledge portal for the Adopt OpenJDK GitHub projects
70
star
18

openjdk-jdk-legacy-hg-clone

Mirror of the jdk/jdk Mercurial forest at OpenJDK
Java
62
star
19

adoptopenjdk-getting-started-kit

A one stop guide for developers of all levels, you start with simple and basic know-how and dive deep into the realms of OpenJDK. Know what the Adopt OpenJDK program is about.
Shell
47
star
20

openjdk8-releases

AdoptOpenJDK main binary releases for OpenJDK 8 with HotSpot
47
star
21

jlink.online

Build optimized Java runtimes in your browser!
Go
46
star
22

jheappo

A Heap Dump Analyzer
Java
39
star
23

openjdk-jdk12u

Mirror of http://hg.openjdk.java.net/jdk-updates/jdk12u/
Java
38
star
24

openjdk-api-v3

AdoptOpenJDK API V3 πŸš€
Kotlin
34
star
25

openjdk16-binaries

The home for releases and nightlies for all AdoptOpenJDK16 variants and platforms
26
star
26

openjdk-jdk9

OpenJDK jdk9 source mirror
Java
24
star
27

jsplitpkgscan

JDK 9+ split package analysis tool
Java
23
star
28

openjdk17-binaries

The home for releases and nightlies for all AdoptOpenJDK17 variants and platforms
18
star
29

openjdk-jdk8u-backup

OpenJDK jdk8u source mirror on master, with selective patches on branch 'dev'.
Java
17
star
30

openjdk12-binaries

The new home for releases and nightlies for all OpenJDK12 variants and platforms
16
star
31

openjdk-api

DEPRECATED and replaced by of https://github.com/AdoptOpenJDK/openjdk-api-v3 - See README
JavaScript
15
star
32

openjdk-aarch64-jdk8u

Mirror of aarch64 jdk8u mercurial forest at OpenJDK
Java
14
star
33

PatchReview

A repo to push patches to for reviewing
Shell
14
star
34

openjdk13-binaries

The new home for releases and nightlies for all OpenJDK13 variants and platforms
13
star
35

openjdk14-binaries

The new home for releases and nightlies for all OpenJDK14 variants and platforms
13
star
36

openjdk-virtual-images

Virtual Images for the Adopt OpenJDK programme
Ruby
11
star
37

install-jdk

Github action that installs SDKs served up by the AdoptOpenJDK API
TypeScript
11
star
38

openjdk-jdk13u

Mirror of the jdk-updates/jdk13u Mercurial forest at OpenJDK
Java
11
star
39

openjdk-docker-build-tools

Shell
10
star
40

openjdk15-binaries

The new home for releases and nightlies for all OpenJDK15 variants and platforms
9
star
41

ForkJoinPoolMonitor

A ForkJoinPool Monitor prototype for possible inclusion into OpenJDK
Java
9
star
42

openjdk9-openj9-releases

AdoptOpenJDK main binary releases for OpenJDK 9 with Eclipse OpenJ9
9
star
43

openjdk8-openj9-releases

AdoptOpenJDK main binary releases for OpenJDK 8 with Eclipse OpenJ9
9
star
44

NashornHackDay

A repo for build instructions & materials related to Nashorn HackDays
JavaScript
9
star
45

openjdk-aarch64-jdk8u-old

Mirror of aarch64 jdk8u mercurial forest at OpenJDK
Java
9
star
46

BuildHelpers

A list of helper scripts for building openjdk.
Shell
8
star
47

openjdk-jdk-old

JDK tip mirror from https://github.com/openjdk/jdk
Java
8
star
48

openjdk-jdk16

JDK16 mirror from https://github.com/openjdk/jdk16
Java
8
star
49

openjdk-jdk16u

JDK16u mirror from https://github.com/openjdk/jdk16u
Java
7
star
50

openjdk10-binaries

The new home for releases and nightlies for all OpenJDK10 variants and platforms
7
star
51

openjdk-jdk8u-backup-31-oct-2018

AdoptOpenJDK GitHub clone of the OpenJDK jdk8u Mercurial forest
Java
6
star
52

adopt-openjdk-kiss-vagrant

Shell
6
star
53

openjdk-jdk14u

JDK14u mirror from https://github.com/openjdk/jdk14u
Java
6
star
54

openjdk9-binaries

The new home for releases and nightlies for all OpenJDK9 variants and platforms
6
star
55

openjdk9-releases

AdoptOpenJDK main binary releases for OpenJDK 9 with HotSpot
5
star
56

openjdk-jdk15

JDK15 mirror from https://github.com/openjdk/jdk15
Java
5
star
57

openjdk-jdk-archived

Mirror of the jdk/jdk Mercurial forest at OpenJDK
Java
5
star
58

semeru17-binaries

4
star
59

TDA

Thread Dump Analysis
Java
4
star
60

openjdk10-releases

AdoptOpenJDK main binary releases for OpenJDK 10 with HotSpot
4
star
61

openjdk-jdk10u

Mirror of the jdkupdates/jdk10u Mercurial forest at OpenJDK
Java
4
star
62

openjdk-aarch32-jdk8u

Mirror of aarch32 jdk8u mercurial forest at OpenJDK
Java
4
star
63

JavadocUpdaterTool

This is a community copy of Oracle's JavadocUpdaterTool to address a security vulnerability http://www.oracle.com/technetwork/java/javase/downloads/java-doc-updater-tool-1955731.html
Java
4
star
64

jsplitpkgscan-maven-plugin

A Maven plugin wrapper for the jsplitpkgscan utility
Java
3
star
65

openjdk-jdk14

JDK14 mirror from https://github.com/openjdk/jdk14
Java
3
star
66

openjdk-aarch32-jdk8u-old

Mirror of aarch32 jdk8u mercurial forest at OpenJDK
Java
3
star
67

openjdk-jdk9u

AdoptOpenJDK GitHub clone of the OpenJDK jdk9u Mercurial forest
Java
3
star
68

website-adoptium

Repo for new Adoptium website
Java
2
star
69

openjdk-jdk15u

JDK15u mirror from https://github.com/openjdk/jdk15u
Java
2
star
70

openjdk-api-java-client

A Java wrapper around the AdoptOpenJDK REST API
Java
2
star
71

semeru8-binaries

2
star
72

openjdk-portola

Mirror of https://github.com/openjdk/portola
Java
2
star
73

blog

The blog of AdoptOpenJDK
JavaScript
2
star
74

semeru11-binaries

2
star
75

openjdk10-nightly

AdoptOpenJDK nightly binary releases for OpenJDK 10 with HotSpot
1
star
76

openjdk-dashboard-v2

The next gen download dashboard
JavaScript
1
star
77

openjdk-amber

The AdoptOpen GitHub clone of http://openjdk.java.net/projects/amber/
Java
1
star
78

openjdk9-openj9-nightly

AdoptOpenJDK nightly binary releases for OpenJDK 9 with Eclipse OpenJ9
1
star
79

openjdk10-openj9-releases

1
star
80

openjdk8-nightly

AdoptOpenJDK nightly binary releases for OpenJDK 8 with HotSpot
1
star
81

openjdk8-dragonwell-binaries

Alibaba Dragonwell8 builds
1
star
82

openjdk-website-next

the next generation adoptopenjdk website πŸš€
TypeScript
1
star
83

openjdk-jdk8u-backup-06-sep-2018

OpenJDK jdk8u source mirror on master, with selective patches on branch 'dev'. https://adoptopenjdk.net
Java
1
star