Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

No lib folder and no class-path in manifest when compiling a NetBeans project on a machine which just has Ant

Posted on 2008-09-29
2
Medium Priority
?
937 Views
Last Modified: 2013-12-14
I am writing a Java application using NetBeans. As part of an automated build process, I need to be able to build the projects on a machine that does not have NetBeans installed. It has Ant, however.

For now, I am just creating a new Java Desktop Application, which uses Swing.

When I compile using NetBeans (or using Ant on the machine where NetBeans is installed), the manifest.mf file in the jar contains a class-path entry which is not present when installing on the other machine. Also, a lib folder is created with the two utility jars required for Swing.

There is a difference in the steps that Ant performs on each machine.

On NetBeans machine, -do-jar-with-libraries is executed.
On server, -do-jar-with-mainclass is executed.

This appears to be why the extra steps aren't being performed, so how do I get Ant to perform the correct steps?

I don't want to modify any files in the project, but I have had to create a .properties file outside the project anyway to specify libs.swing-app-framework.classpath and libs.CopyLibs.classpath, so if there is something simple I can add to this file that would solve the problem, that would be great.

Something to do with mkdist.available?

TIA!
0
Comment
Question by:scuzzie
2 Comments
 
LVL 6

Expert Comment

by:wwnosal
ID: 22599235
Try to include attached snippet somewhere in -do-jar-with-mainclass target before jar is actually created.
<manifest>
  <attribute name="Main-Class" value="${main.class}"/>
  <attribute name="Class-Path" value="${jar.classpath}"/>
</manifest>

Open in new window

0
 
LVL 1

Accepted Solution

by:
scuzzie earned 0 total points
ID: 22601006
It seems that once I had specified libs.CopyLibs.classpath in an additional build.properties file, this was enough to switch conditions and cause the correct path to run.

I just had to specify the path on the ant command-line:
ant -propertyfile ../build.properties jar

worked for me.
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering 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

Java Flight Recorder and Java Mission Control together create a complete tool chain to continuously collect low level and detailed runtime information enabling after-the-fact incident analysis. Java Flight Recorder is a profiling and event collectio…
Go is an acronym of golang, is a programming language developed Google in 2007. Go is a new language that is mostly in the C family, with significant input from Pascal/Modula/Oberon family. Hence Go arisen as low-level language with fast compilation…
Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:
THe viewer will learn how to use NetBeans IDE 8.0 for Windows to perform CRUD operations on a MySql database.
Suggested Courses

885 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