background preloader

Java Libraries and Tools

Facebook Twitter

Everything about Java 8 - TechEmpower Blog. ND4J: N-Dimensional Arrays for Java N-Dimensional Scientific Computing for Java. TotallyLazy. Aol/cyclops. Guava-libraries - Guava: Google Core Libraries for Java 1.6+ The Guava project contains several of Google's core libraries that we rely on in our Java-based projects: collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and so forth.

guava-libraries - Guava: Google Core Libraries for Java 1.6+

The latest release is 16.0.1, released February 4, 2014. Start using Guava You can download a JAR at: Guava is also available in Maven Central under the following identifiers: Learn more about how to UseGuavaInYourBuild. Please see the 16.0 release notes for more details about this release. Learn about Guava To stay informed and get "tip of the week"-style posts, follow +Google Guava on Google+. To just stay informed, period, about important news that every Guava user needs to know, subscribe to guava-announce. To report a defect or request a feature, click the Issues tab above and enter a new issue. To get help on a specific question or problem, post a question to Stack Overflow with the tag "guava". EasyMock. Requirements.


Facebook/jcommon · GitHub. Giraph - Welcome To Apache Giraph! The streams framework is a Java implementation of a simple stream processing environment.

It aims at providing a clean and easy-to-use Java-based platform to process streaming data. The core module of the streams library is a thin API layer of interfaces and classes that reflect a high-level view of streaming processes. This API serves as a basis for implementing custom processors and providing services with the streams library. Figure 1: Components of the streams library. Figure 1 shows the components of the streams library. Get your hawtio running! You can use hawtio from a Chrome Extension or in many different containers - or outside a container in a stand alone executable jar.

get your hawtio running!

Below are all the various options for running hawtio. Karaf 3.0.1. OpenJDK: jmh. JMH is a Java harness for building, running, and analysing nano/micro/milli/macro benchmarks written in Java and other languages targetting the JVM.

OpenJDK: jmh

Basic Considerations The recommended way to run a JMH benchmark is to use Maven to setup a standalone project that depends on the jar files of your application. Byteman - JBoss Community. Reasons to prefer logback. Josephmisiti/awesome-machine-learning. Lanterna - Easy console text GUI library for Java. Welcome Also, when running Lanterna on computers with a graphical environment (such as Windows or Xorg), a bundled terminal emulator written in Swing will be used rather than standard output.

lanterna - Easy console text GUI library for Java

This way, you can develop as usual from your IDE (most of them doesn't support ANSI control characters in their output window) and then deploy to your headless server without changing any code. Lanterna is structured into three layers, each built on top of the other and you can easily choose which one fits your needs best. The first is a low level terminal interface which gives you the most basic control of the terminal text area. You can move around the cursor and enable special modifiers for characters put to the screen. Xtend - Modernized Java.

Xtext - Language Development Made Easy! Syntax Coloring Out of the box, the editor supports syntax coloring based on the lexical structure and the semantic data of your files.

Xtext - Language Development Made Easy!

Java 8 Part 4 - Concurrency, TLS SNI, and PermGen. Java 8 is shipping with a slew of awesome new features that you learned about in parts one and two of this Java 8 series.

Java 8 Part 4 - Concurrency, TLS SNI, and PermGen

In part three we wrote about the improvements being made to HashMap and the date and time API, and now, in the fourth (and final) installment, we’ll round out the series by showing some of the other various improvements being shipped with Java 8. Concurrency Update The java.util.concurrent.atomic package has been expanded to include four new classes that allow for concurrent, scalable, and updatable variables. LongAccumulator and LongAdder (and the complementary DoubleAccumulator and DoubleAdder) can be used almost anywhere you need to sum a value across multiple threads, and is generally preferable to the AtomicLong class since it’s considerably faster.

These new classes essentially store each update without affecting the original variable. 6 Great Java Interview Questions and Answers. In Java, each thread has its own stack, including its own copy of variables it can access.

6 Great Java Interview Questions and Answers

When the thread is created, it copies the value of all accessible variables into its own stack. The volatile keyword basically says to the JVM “Warning, this variable may be modified in another Thread”. CPU Cache Essentials. This post came to my mind after watching the excellent presentation of Scott Meyers called "CPU Caches and Why You care".

CPU Cache Essentials

This post will try to summarize the ideas of the presentation so if you have some spare time you can just watch the presentation on video. Source code search engine. Source code search engine. Mrb: What Is Declarative Programming? Cloud Platform at Google I/O - new Big Data, Mobile and Monitoring products. By Greg DeMichillie, Google Cloud Platform team Today at Google I/O, we are introducing new services that help developers build and optimize data pipelines, create mobile applications, and debug, trace, and monitor their cloud applications in production. Introducing Google Cloud Dataflow A decade ago, Google invented MapReduce to process massive datasets using distributed computing.

Since then, more devices and information require more capable analytics pipelines — though they are difficult to create and maintain. Best of VIM Tips, gVIM's Key Features zzapper. Google/cayley. TinkerPop. Reactor - a foundation for asynchronous applications on the JVM.