public final class JProjectUtil
extends java.lang.Object
Modifier and Type | Method and Description |
---|---|
static void |
addLibraries(Project proj,
java.lang.Object[] libraries)
Adds the specified libraries to a project, and fires PropertyChangeEvents
if the project's classpath, sourcepath, or docpath changed.
|
static void |
execturePathChange(Project project,
java.lang.Runnable runnable)
Deprecated.
Use project.applyBatchChanges
Executes a runnable and sends property path changed events.
Example Usage:
Runnable changePathRunnable = new Runnable() { project.addLibrary(...); project.setOutputDirectory(...); }; JProjectUtil.execturePathChange(changePathRunnable); |
static java.lang.String |
getLibraryNameFromPath(java.net.URL path)
Get the library name given the URL path.
|
static java.net.URL |
getProjectBasePath(Project project)
Retrieves the URL that denotes the base path that should be used when
creating new source files.
|
static java.net.URL |
getSourceRootForFile(java.net.URL fileURL,
boolean showError,
SourceRootHelper[] helpers)
Determines the source root for the supplied Java file.
|
static java.net.URL[] |
getSourceRoots(java.net.URL[] urls,
SourceRootHelper[] helpers)
Gets all the source roots from the supplied list of URLs.
|
static java.util.ArrayList |
getSourceRootsFromFolder(java.net.URL folder,
SourceRootHelper[] helpers)
Finds one or more source roots for the supplied URL.
|
static void |
notifyCanceled()
Sets the user-canceled flag to
true . |
static void |
removeLibraries(Project proj,
java.lang.Object[] libraries)
Removes the specified libraries from a project, and fires
PropertyChangeEvents if the project's classpath, sourcepath,
or docpath changed.
|
static void |
setOutputDirectory(Project project,
java.net.URL outputDirectory)
Sets the location for a project's generated class files.
|
public static java.net.URL getProjectBasePath(Project project)
project
- the project whose base path is required.public static void addLibraries(Project proj, java.lang.Object[] libraries)
public static void removeLibraries(Project proj, java.lang.Object[] libraries)
public static void setOutputDirectory(Project project, java.net.URL outputDirectory)
project
- the projectoutputDirectory
- the output path URLpublic static void execturePathChange(Project project, java.lang.Runnable runnable)
Runnable changePathRunnable = new Runnable() { project.addLibrary(...); project.setOutputDirectory(...); }; JProjectUtil.execturePathChange(changePathRunnable);
public static java.lang.String getLibraryNameFromPath(java.net.URL path)
path
- The URL pathpublic static void notifyCanceled()
true
. This is used by
getSourceRoots and findSourceRootsFromURL methods to cancel the
potentially long-running search for source roots.
This method was made public because OSGI does not allow access to package-private methods from a different module JAR.
public static java.net.URL[] getSourceRoots(java.net.URL[] urls, SourceRootHelper[] helpers)
notifyCanceled
.
Note that if no valid roots are found for a given URL in
urls,
the URL itself is assumed to be a source root.
This method is public only due to the need to make it public for
OSGI to allow method to be accessed from another jar file containing
the same package.
urls
- an array of URL
sURL
snotifyCanceled()
public static java.util.ArrayList getSourceRootsFromFolder(java.net.URL folder, SourceRootHelper[] helpers)
This method was made public because OSGI does not allow access to package-private methods from a different module JAR.
folder
- a directory URLhelpers
- the registered SourceRootHelper
SourceRootHelper
public static java.net.URL getSourceRootForFile(java.net.URL fileURL, boolean showError, SourceRootHelper[] helpers)
This method was made public because OSGI does not allow access to package-private methods from a different module JAR.
fileURL
- a URL for an existing Java file