Solving CentOS 7, Fedora Problems at Startup Wrong Layouts


Here I describe some notable Linux distribution errors which can be corrected with the following startup options (1) and CSS changes (2).

1. Startup Problems

There seems to be problems with CentOS 7  in general. If the application does not start correctly, e.g., the Bio7 window will not be shown then add the following arg (e.g., with a text editor) to the Bio7.ini file in the Bio7 base folder (installation folder).


This arg had to be added like this in the*.ini file (see screenshot – don’t place it wrong else an error will occur!):


After saving the file Bio7 should be started on CentOS 7 (see screenshot below)! Please note that you can also adjust the Java memory there.


Another rare error occuring in Fedora is described here!.
However I tested Bio7 on the latest Fedora release and Bio7 started without any problems.

2. Layout Problems

If the layout of your distribution seems to be distorted (e.g., maximize buttons are to small – could be occuring in the default layout of Fedora and CentOS!) this can be corrected in the Bio7 CSS. The file can be found under:

(win7.css was reused for Linux so please don’t wonder)

The following changed css attributes will correct the height of the toolbars (changed attributes in bold):

.MPartStack {
color: ‘#org-eclipse-ui-workbench-INACTIVE_TAB_TEXT_COLOR';
 swt-tab-height: 36.0px;

} {
swt-shadow-visible: false;
 swt-tab-height: 36.0px;

/*Important to set height for the view menus!*/
CTabFolder {
swt-corner-radius: 15.0;
swt-tab-height: 36.0px;

Of course you can change other attributes as well, e.g.,  if you want to change a color.




Bio7 2.0 for Linux Released!


I released the Linux version of Bio7 2.0 (see screenshot below).


For an overview of the new Bio7 features follow the link: Bio7 2.0 new features

Added Linux features:

  • A new Java menu action (in the Scripts menu) is available to start a Py4J server which can communicate to Java and CPython (if enabled in the native preferences of Bio7 and Py4J is installed in the local Python distribution). With this feature it is, e.g., possible to transfer ImageJ values to CPython or call the Bio7 Java API.
  • Improved the embedded native pseudo terminal to send signals to a process tree (e.g., SIGINT = STRG+C).
  • Added an option in the native preferences to interpret a Python script with a a native CPython interpreter >=3.0.


Download Bio7 and simply unzip the Bio7 archive file in your preferred location. Bio7 comes bundled with a JRE so you don’t need to install Java separately. The Bio7 application was tested on Ubuntu 14.04 (minimum requirement).

R features:

For the Linux version of Bio7 2.0 R and Rserve have to be installed. For the use in Bio7 Rserve has to be compiled with a special flag to enable the cooperative mode (see below).

In a shell simply execute:


The command will compile and install the Rserve package in your default Linux R application. This is necessary to share the R workspace when you switch from a local Rserve connection to the native Bio7 R console (see this video for an explanation of the new connection mode in Bio7).

Please note that the default R package location of Bio7 is: /usr/lib/R/site-library

The location (and the path to R) can be changed in the R preferences of Bio7 (e.g., menu: R->Preferences).








First Screenshot of Bio7 2.0 MacOSX


I’m constantly working on the Linux and Mac version of Bio7 2.0 which caused some difficulties because of the OS specific functionalties of Bio7. However I was able to solve many mysteries and could even improve the GUI display (e.g., font size of the view menus) and behaviour of the embedded AWT components (e.g., now the ImageJ dialogs are modal). Here is a MacOSX screenshot of the results:


First I will release the Linux version (hopefully next week and then later the Mac version). I still have to solve some problems (embedding a JRE and JavaFX on MacOSX) but I’m quite confident to solve these problems, soon.

Image Data Transfer to R with ImageJ and Bio7 2.0


In the new version of Bio7 2.0 i added some new easy to use functions to transfer image data from ImageJ to R. For example, you can now drag a folder of images on the ImageJ-Canvas
view, open them memory efficient as a virtual stack in ImageJ and transfer them with one action as a list (or raster stack) to R.

With the new or improved actions it is possible to:

  • Transfer an ImageJ stack or virtual stack to R (RGB data or selected datatype will be transferred as a list).
  • Optionally transfer the stack as a raster stack (if the “raster” package is installed).
  • Transfer measured “Particles”  values from the “Results Table” from ImageJ to R.
  • Transfer values from an opened ImageJ “Results Table”.


Beside this new or improved actions there are many other methods available to transfer image data, selected pixel or selected coordinate data from ImageJ to R.

For an overview of the different functions i created a video playlist on YouTube how Bio7 can effectively asssist in the transfer and statistical analysis of image data (with the help of ImageJ and R).


Bio7 2.0 for Windows Released!


A new Windows version of Bio7 is available. Many new features have been added to Bio7 2.0 which is now based on Eclipse 4.4. Highlights are the improved R editor, the R debugging Graphical User Interface (using the standard R debugger), the integrated Java Development Tools (JDT) to create Java simulation models with a powerful Java editor and the embedded JavaFX SceneBuilder to create embeddable GUI’s on the fly.

Here an overview of the new features:


  • Updated R to Version 3.1.2
  • Updated Rserve to version 1.7.3
  • Rserve is now started by default within a R process in a pseudo-terminal in Bio7.
  • The R pseudo-terminal can also be started without Rserve.
  • If started only in the native pseudo-terminal some Rserve functions are not available (e.g. the plots will be displayed in the default R graphic device and not in ImageJ!)
  • The R terminal and Rserve are now sharing the same process.
  • If you switch from Rserve to the R native pseudo-terminal all R Objects will be preserved and vice versa (same process).
  • Implemented a debugging GUI interface for the R debugger visible if a breakpoint in the editor has been set.
  • Added two special debug views to the R perspective.


  • If a debugging process is started Rserve automatically switches to the native connection.
  • Added an interrupt action to the R-Shell and the R console to interrupt an R evaluation (Strg+c in the console).
  • Added console actions to kill a native process and to kill a native R (Rterm) process if necessary.
  • Created a new single preferences page for the plot setting .

R Editor

  • Integrated an ANTLR R parser for the R editor.
  • Created an editor outline from parsed R scripts.
  • Added a format action (using “formatR” package if installed).
  • Extended the code completions for the R editor.
  • Syntactical errors are now indicated in the editor.
  • Implemented code folding for functions.
  • Implemented hoover actions for the editor (R help for e.g. a function).
  • Improved the recognition of numbers in the R editor.
  • Implemented a marker for matching brackets.
  • Implemented a function to mark reoccuring words in the editor.


ImageJ and R

  • Added a new action to transfer the values of the ImageJ “Results Table” to R.
  • Improved the Particles action. Now the Particle measurements are transferred from the “Results Table” to R which means that now all values from a stack can be transferred, too.
  • Added a new action to transfer all stack images of an opened stack (also from a nearly non memory consuming virtual stack) to R.
  • A new option is available to convert the stack images to a RasterStack (if the “raster” package is installed).
  • With this action it is also possible to transfer R,G,B values from all slices (images) of a stack, too.
  • Improved the ImageJ image to R API to create matrices from transferred image values.
  • Created an new API method to transfer particle analysis values programmatically.


  • Improved the display. The default image layout now works better after a resize event.
  • ImageJ tabs can now be detached like an image window (see below).


  • Added some improvements for external ImageJ plugins.
  • Updated ImageJ to the latest version.
  • Added more image examples from the ImageJ website.
  • The size of the “Image-Methods” view and the ImageJ toolbar dialog can be adjusted in the Bio7 preferences.


  • Improved the table editing in the “Table” view of Bio7. If you now edit a value and press the return key automatically the next cell is selected for editing (arrow keys for left and right, Tab key for selecting the upper cell).
  • Now the table scales if you paste values or if you transfer vector values from R.
  • The scrollbars now follow the location of the next edited cell.
  • The sheet tabs handle is now located at the bottom of a sheet.
  • The speed of the table component has been improved.




  • Embedded the SceneBuilder panels as Bio7 views.
  • Created several new Java wizards to create Bio7 projects, JavaFX projects, etc. in Bio7.  They are creating a Bio7 JDT project with all necessary Bio7 classpath libraries. In addition a wizard for a WindowsBuilder project is available, too.
  • Bio7 is now compatible with the most Eclipse plugins which can be installed with the Update Manager of Bio7 (see “General” section below).
  • Improved the compilation which now can detect main classes organized in Java packages.
  • Added a new action to fix the JDT classpath (also invoked if a Bio7 JDT project gets imported). This is necessary to recalculate the JDT library paths for a local Bio7 installation.
  • Hid unnecessary GUI elements from JDT.
  • Updated all scientific and custom Bio7 libraries.
  • Integrated two new SWT libraries to create scientific components and components in general (Nebula visalization – see below, Opal).


  • The Eclipse jobs API can now be used from within Bio7.
  • Ported all Java examples to JDT projects and reorganized the examples.


  • Updated WorldWind to version 2.0.
  • Added an option to select the ImageJ image tab for WorldWind (nice if you want to render a film with ImageJ images).
  • An RGB image can now have transparent alpha values (RGBA) which appear translucent if rendered on the globe.

HTML Editor

  • Added some actions to the editor toolbar to add Knitr templates, links and images.


  • It is now possible to install most of the available Eclipse plugins with the update manager of Bio7 (see below – Bio7 with WindowsBuilder installed).


  • Reorganized the Bio7 preferences for a better usability.
  • Created a new CSS theme for Bio7 (Eclipse Themes plugin for a custom theme can be installed, too)
  • Addded a LaTex editor (Texlipse) to Bio7 for the use with KnitR and Sweave.
  • Added toolbar actions to start the native consoles easier (R, OS Terminal, Python).
  • If you switch from one console to another the process won’t be killed and you can resume a native session (R, Python, OS Terminal).
  • Improved the layout of the “Control” view.
  • Many Eclipse improvements like a split editor action are available by default (Bio7 is based on Eclipse 4.4)
  • Many bugfixes and other improvements.

This release can be downloaded from the Bio7 website:

Documentation and videos tutorials can be found here:

Documentation (1.7.1)

YouTube Videos