Solved

Batch file creation

Posted on 2011-02-22
8
281 Views
Last Modified: 2012-05-11
Hello,

I'm trying to create a batch file based on a JAVA Eclipse project I have running.

I've created a text file (test.bat)

I have a number of inputs in my run configuration.  

Program Arguments:
Path to input folder - C:/Eclipse/Workspace/ProjectName/Input

VM Arguments:
-DlogFile_var=C:/temp

Unsure of how to set it up.  Are there any good references you could point me towards?

Calling the main class etc.

I'll be providing the app in a zip file that the user will extract to their computer.  The user will update the batch file with the path to the input folder and other settings.
Thanks
0
Comment
Question by:AndyC1000
  • 6
8 Comments
 
LVL 47

Accepted Solution

by:
for_yan earned 334 total points
ID: 34949606

At the bottom of this thread there is the simplest example:
http://www.velocityreviews.com/forums/t127584-how-to-create-a-batch-file-to-run-a-java-application.html

If you want something more sophisticated you can go for installer programs and packages, some are commerically available of course
0
 
LVL 47

Expert Comment

by:for_yan
ID: 34950038
If you really want to install big appliactions then you could go for special tools
like InstallAnywhere or InstallShield, but if you are deploying for limited number of people
within your company then batch file is quite fine.

As I mostly write programs for folks within one site of one company, I prefer to put application classes to a folder on the fileshare,
create batch file also on that share and then  each client just needs to have shortcut to that batch
file on his/her desktop. I am even using Java virtual machine from the same fileshare - it does take
longer time to launch, but the great benefit is that I'm not dependent on their individual VMs.
I'm sure no experts will recommend you this way, but it works for me and for dozens of my clients
for about 10 years with minimum disruptions and pain. And when I need to upgrade, I just change the code
in one place. Of course if your users are in different places and sites and they are very numerous - then it is another story.

 
0
 
LVL 86

Assisted Solution

by:CEHJ
CEHJ earned 166 total points
ID: 34950280
You would be better off exporting the project to an executable jar

http://www.associatedcontent.com/article/2888442/using_eclipse_export_option_to_build.html?cat=15
0
Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 

Author Comment

by:AndyC1000
ID: 34967958
This is the batch file I've created.  Not sure where the issue is, any ideas?  It's not the running app.  

@ECHO OFF
ECHO STARTED Batch..

if not "%JAVA_HOME%" == "" goto javaHomeAlreadySet
for %%P in (%PATH%) do if exist %%P\java.exe set JAVA_HOME=%%P..\
:javaHomeAlreadySet


:: Directory and file locations
SET args[0]= data/post/input/State :: Program arguments

SET -DprocessAll=true  :: VM argument
SET -DprocessEns=true ::VM argument
SET -DmissingVal="-1" ::VM argument
SET -DlogFile_var=C:/temp ::VM argument

:: Date for log file (not currently used)
FOR /F "tokens=*" %%A IN ('DATE/T') DO FOR %%B IN (%%A) DO SET Today=%%B
FOR /F "tokens=5 delims= " %%A in ('echo ^| time ^| find "current" ') DO FOR %%B IN (%%A) DO SET Now=%%B
FOR /F "tokens=1-3 delims=/-" %%A IN ("%Today%") DO (
    SET Day=%%A
    SET Month=%%B
    SET Year=%%C
)
FOR /F "tokens=1-3 delims=:.-" %%A IN ("%Now%") DO (
    SET Hour=%%A
    SET Min=%%B
    SET Sec=%%C
)

:: Read and convert output
ECHO STARTING 

:: How to run program here-->
java -cp /src/csi/cl/da/post/WSAdaptor.java

ECHO FINISHED READING and converting output

:END
ECHO ...End Batch
@ECHO ON

Open in new window




0
 
LVL 47

Expert Comment

by:for_yan
ID: 34967967
in the run command after -cp you should have the classpath argument, the calss stating excutin
(with main method) should be separate arguument
0
 
LVL 47

Expert Comment

by:for_yan
ID: 34967976
Something like that:
java -cp (here your classpath without spacses enumartion of jar failes usually)    (here space)  com.mypackage.MyMainClassName
0
 
LVL 47

Assisted Solution

by:for_yan
for_yan earned 334 total points
ID: 34967987



This is real life example:


java   -classpath "d:\jdk1.4.1_02\lib\tools.jar;..\bin\bootstrap.jar "     org.apache.catalina.startup.Bootstrap start
0
 
LVL 47

Expert Comment

by:for_yan
ID: 34967991
In the example above after -classpath you see a buch of jars, then after space your main calss ij this case
org.apache.catalina.startup.Bootstrap  and the argument for that class (in this case start)
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Should localization be done inside spring controller 5 32
use lov values 2 61
web project error add remove 1 28
running on tomcat not jboss eap 7.0 3 18
For customizing the look of your lightweight component and making it look lucid like it was made of glass. Or: how to make your component more Apple-ish ;) This tip assumes your component to be of rectangular shape and completely opaque. (COD…
Java contains several comparison operators (e.g., <, <=, >, >=, ==, !=) that allow you to compare primitive values. However, these operators cannot be used to compare the contents of objects. Interface Comparable is used to allow objects of a cl…
This tutorial covers a practical example of lazy loading technique and early loading technique in a Singleton Design Pattern.
This tutorial will introduce the viewer to VisualVM for the Java platform application. This video explains an example program and covers the Overview, Monitor, and Heap Dump tabs.

840 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question