Author: vyemialyanchyk
Date: 2010-05-25 10:30:17 -0400 (Tue, 25 May 2010)
New Revision: 22306
Modified:
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/HibernateConsoleMessages.java
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/HibernateConsoleMessages.properties
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/launch/ConsoleConfigurationJavaClasspathTab.java
Log:
https://jira.jboss.org/browse/JBIDE-6337 - fix with missing archive file in classpath
Modified:
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/HibernateConsoleMessages.java
===================================================================
---
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/HibernateConsoleMessages.java 2010-05-25
14:09:16 UTC (rev 22305)
+++
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/HibernateConsoleMessages.java 2010-05-25
14:30:17 UTC (rev 22306)
@@ -436,6 +436,7 @@
public static String ConsoleConfigurationTab_browse;
public static String ConsoleConfigurationTab_create_new;
public static String ConsoleConfigurationTab_setup;
+ public static String
ConsoleConfigurationTabGroup_archive_classpath_entry_does_not_exist;
public static String
ConsoleConfigurationTabGroup_classpath_must_be_set_or_restored_to_default;
public static String DirectoryBrowseField_filesystem;
public static String DirectoryBrowseField_workspace;
Modified:
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/HibernateConsoleMessages.properties
===================================================================
---
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/HibernateConsoleMessages.properties 2010-05-25
14:09:16 UTC (rev 22305)
+++
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/console/HibernateConsoleMessages.properties 2010-05-25
14:30:17 UTC (rev 22306)
@@ -440,6 +440,7 @@
ConsoleConfigurationTab_browse=Browse...
ConsoleConfigurationTab_create_new=Create New
ConsoleConfigurationTab_setup=Setup...
+ConsoleConfigurationTabGroup_archive_classpath_entry_does_not_exist=Archive classpath
entry doesn't exist [{0}]
ConsoleConfigurationTabGroup_classpath_must_be_set_or_restored_to_default=Classpath must
be set or restored to default
DirectoryBrowseField_filesystem=Filesystem...
DirectoryBrowseField_workspace=Workspace..
Modified:
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/launch/ConsoleConfigurationJavaClasspathTab.java
===================================================================
---
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/launch/ConsoleConfigurationJavaClasspathTab.java 2010-05-25
14:09:16 UTC (rev 22305)
+++
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/launch/ConsoleConfigurationJavaClasspathTab.java 2010-05-25
14:30:17 UTC (rev 22306)
@@ -15,6 +15,7 @@
import org.eclipse.jdt.debug.ui.launchConfigurations.JavaClasspathTab;
import org.eclipse.jdt.launching.IRuntimeClasspathEntry;
import org.eclipse.jdt.launching.JavaRuntime;
+import org.eclipse.osgi.util.NLS;
import org.hibernate.eclipse.console.HibernateConsoleMessages;
import org.hibernate.eclipse.console.HibernateConsolePlugin;
@@ -29,27 +30,35 @@
}
public boolean isValid(ILaunchConfiguration launchConfig) {
- if(super.isValid( launchConfig )) {
- setErrorMessage( null );
- setMessage( null );
- IRuntimeClasspathEntry[] entries;
- try {
- entries = JavaRuntime.computeUnresolvedRuntimeClasspath(launchConfig);
- for (int i = 0; i < entries.length; i++) {
- IRuntimeClasspathEntry entry = entries[i];
- if(entry.getClasspathProperty()==IRuntimeClasspathEntry.USER_CLASSES) {
- return true;
+ if (!super.isValid(launchConfig)) {
+ return false;
+ }
+ setErrorMessage(null);
+ setMessage(null);
+ boolean resUserClasses = false, resExistArchive = true;
+ IRuntimeClasspathEntry[] entries;
+ try {
+ entries = JavaRuntime.computeUnresolvedRuntimeClasspath(launchConfig);
+ for (int i = 0; i < entries.length; i++) {
+ IRuntimeClasspathEntry entry = entries[i];
+ if (entry.getClasspathProperty() == IRuntimeClasspathEntry.USER_CLASSES) {
+ resUserClasses = true;
+ if (entry.getType() == IRuntimeClasspathEntry.ARCHIVE) {
+ if (!entry.getPath().toFile().exists()) {
+ resExistArchive = false;
+ String out =
NLS.bind(HibernateConsoleMessages.ConsoleConfigurationTabGroup_archive_classpath_entry_does_not_exist,
entry.getPath().toString());
+ setErrorMessage(out);
+ }
}
}
-
}
- catch (CoreException e) {
- HibernateConsolePlugin.getDefault().log( e );
- }
- setErrorMessage(
HibernateConsoleMessages.ConsoleConfigurationTabGroup_classpath_must_be_set_or_restored_to_default
);
- return false;
+ } catch (CoreException e) {
+ HibernateConsolePlugin.getDefault().log( e );
}
- return false;
+ if (!resUserClasses) {
+ setErrorMessage(HibernateConsoleMessages.ConsoleConfigurationTabGroup_classpath_must_be_set_or_restored_to_default);
+ }
+ return resUserClasses && resExistArchive;
}
public void initializeFrom(ILaunchConfiguration configuration) {