QuestionsAboutExistingProjectMetadata

Things we would like to know from users with existing projects to best support their use of NetBeans.

Mostly focused on Java development; not currently soliciting information about C++ applications, Rails applications, etc.

Questions about general project setup

Java sources

Does your project involve Java sources? Are they arranged in a single tree organized by package?

Do you have more than one Java source root? If so, do they all get compiled together, or separately? Do you compile just portions of a single Java source root (excluding other portions), or compile different subsets of a single source root at different times?

Do you have additional directory trees for package-structured resources (properties files, images, etc.)?

Do you use other JVM-based languages (Groovy, ...)?

Do you generate source code (e.g. from XML schemas)? If so, does this get compiled before or after hand-written sources? Do you do source generation on every build, or just manually on demand?

Do you have unit tests? Some other kind of tests? In the same tree, or a parallel tree? Can they be run directly or do they require some special environment to be prepared beyond the setUp method or similar? Do developers normally run the entire suite of tests, or just certain tests of interest?

What source level do you use (e.g. JDK 5 for generics)? Do you use special compiler flags? Annotation processing (APT or JDK 6)?

Libraries & project interdependencies

Do you add libraries to your Java classpath? Are these libraries kept in version control alongside sources? If not, how are they referred to - environment variables, per-user configuration in an IDE, ...?

Do you have multiple projects arranged in a dependency hierarchy?

Packaging & deployment

Do you package or deploy your project(s) in any of the following ways?

  • component JAR for inclusion in some other system as a library
  • standalone JAR (with Main-Class)
  • applet
  • Java Web Start
  • all-in-one JAR (e.g. JarJar, ClassWorlds, ...)
  • Java EE web application (WAR)
  • Java EE application (EAR)
  • installer (pure Java, InstallShield, ...)
  • other (please specify)

Technologies

Do you use any of the following frameworks or technologies in your project?

  • Hibernate
  • JPA
  • Spring
  • JSP
  • JSF (Java Server Faces)
  • Struts
  • other (please specify)

Does your project have a (non-HTML) GUI? Using Swing, or some other toolkit?

Questions about type of project metadata used

Do the versioned sources of your project contain any of the following kinds of metadata or build script?

  • Eclipse project metadata (.project, .classpath, etc.)
  • NetBeans project metadata (nbproject)
  • if so, what kind of NetBeans project is it? (Java SE, Java EE, "freeform", ...)
  • Project metadata from another IDE (please specify)
  • Ivy library list (ivy.xml)
  • Maven 1.x descriptor (project.xml etc.)
  • Maven 2.x descriptor (pom.xml)
  • Ant build script
  • makefile
  • other (please specify)

If more than one of the above, is one of them the definitive description of the project's structure while others are either generated or manually synchronized on demand?

Eclipse-specific questions

(assuming user has Eclipse project metadata)

What kind of Eclipse project is it? ("natures", e.g. what project template was used)

Which Eclipse distribution do you use? (Europa, MyEclipse, ...) Do you use additional plug-ins on your project? If so, which?

What builders are in use? ("Builders" in Properties dialog of project)

What kinds of classpath entries do you use? ("Libraries" in "Java Build Path")

Does the project have some launch configurations ("Run/Debug Settings")? Of what type (Java application, JUnit, ...)?

Do you have some application servers configured? If so, what kind (Tomcat, JBoss)?

Ant-specific questions

(assuming user has an Ant script)

Written by hand? Generated from something else?

How big/complex (# targets, # lines, <import>s, ...)?

What general kinds of targets do you have (check all that apply)?

  • clean build products
  • compile all source code
  • generate source code (specify tool, e.g. JAXB)
  • generate Javadoc
  • generate other kinds of documentation (please specify)
  • build JARs/WARs/etc. (please specify format)
  • (pre-)compile JSPs
  • run CheckStyle, FindBugs, etc. (please specify which)
  • run program interactively using <java>
  • run program interactively in another way (please specify)
  • deploy to application server (please specify server type)
  • perform version control operations on project
  • run all unit tests (please specify JUnit 3.x, 4.x, TestNG, ...)
  • run tests of another kind (please specify)
  • run an individual test case
  • build subprojects
  • other (please specify)

Which targets are run on a daily basis by developers? Which are run by a continuous builder or during a production build?

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo