Programmatically Get Absolute Path of Java Executable in a Running Program

Do you want to get absolute path of the specific Java executable that was used to launch a program, from within that program itself? May be you want to launch another Java program P2 from a program P1 and you want to make sure that P2 is launched using the same version of Java that was used to launch P1?

It is possible. Java runtime makes available a system property  java.home which contains the path to its installation or root directory. Java executable is usually located (tested on Windows and Mac) inside  java.home in a folder named  bin . We can combine these two facts to get absolute path of the Java executable that was originally used to launch a program. Here is a code snippet that does exactly this:

You will need to import  java.io.File in your source code to compile it. After these couples of lines have executed,  javaExe will contain our required path. You can use it for whatever purpose you want. Here is a sample code snippet that uses this Java executable to launch another Java program in a separate JVM. Continue reading Programmatically Get Absolute Path of Java Executable in a Running Program

SOLUTION: No Java runtime present, requesting install – Mac OS X Yosemite

I was working on a simple java based desktop application today. It was packaged in an executable jar. One of its required features was to launch another executable jar in a separate instance of JVM. Here is my code dealing with this requirement:

This is equivalent of running following command on terminal.

This code was working fine on Windows and Ubuntu. But on Mac, it resulted in a dialogue like this: Continue reading SOLUTION: No Java runtime present, requesting install – Mac OS X Yosemite

C++ Program to Separate Digits of a Positive Integer

Seperate digits of a positive integers Suppose you want to write a program in C++ which will take a positive integer from the user and output its individual digits. For example, if the input provided is 12345 then it will print 1,2,3,4 and 5 separately as integers. In this article we shall look at a few different ways of accomplishing exactly this.

First of all, look at the following program. It is probably the simplest way of separating digits of an integer. It makes use of the fact that when the division operator (/) is used with two integer operands then it gives us only the whole part of the quotient and the remainder operator (%) gives us the remainder when dividend is divided by the divisor. In this particular case, we use 10 with both these operators as divisor. When we use it with the remainder operator we get the last digit of the number entered by the user and when we use it with the division operator then we get the original number without that last digit. In this way, repeating these two steps until the original number becomes zero, we get each individual digit of the original number form right to left i.e. from least significant to most significant digit. Continue reading C++ Program to Separate Digits of a Positive Integer

Recursive C++ Program to Convert a Decimal Integer into Binary Number

Here is a very simple and recursively written C++ program to convert a decimal integer number into its binary equivalent. However it returns the binary equivalent in the form of a string of characters but you can very easily write an other function to convert this string into an actual binary number as well. Continue reading Recursive C++ Program to Convert a Decimal Integer into Binary Number

C++ program to check if a sentence is a Palindrome or not

Wikipedia defines Palindrome as, “A palindrome is a word, phrase, number or other sequence of units that can be read the same way in either direction (the adjustment of punctuation and spaces between words is generally permitted).”

There are two different kinds of Palindrome. One is on a character by character basis while the other is on a word by word basis. Examples of these two type of palindromes are “Was it a rat I saw?” and “Fall leaves after leaves fall” respectively.

I have written a program in C++ which can check a word, phrase or sentence if it is a palindrome on a character by character basis. It is capable of handling complex sentences with punctuation marks such as “Dammit, I’m mad!”.

The logic I used in this program is almost self evident but still I have written a short explanation of how it works in the following lines. Continue reading C++ program to check if a sentence is a Palindrome or not