Hi,

If I run the Calculator test case inside Eclipse without setting the "tuscany.installDirectory" system property, I get the following exception.

java.lang.IllegalStateException: Must be run from a jar: file:/C:/Tuscany/Apache/java/sca/core/target/classes/org/apache/tuscany/core/launcher/Launcher.class at org.apache.tuscany.core.launcher.Launcher.getInstallDirectory(Launcher.java:175)
at org.apache.tuscany.core.launcher.Launcher.bootRuntime(Launcher.java:105)
at org.apache.tuscany.test.SCATestCase.setUp(SCATestCase.java:52)
at calculator.CalculatorTestCase.setUp(CalculatorTestCase.java:32)
at junit.framework.TestCase.runBare(TestCase.java:125)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:128) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)

Can we relax this constraint? I checked the references to RuntimeInfo.getInstallDirectory() and found out it's only used to deploy extensions. We also have a "TODO" in the code saying "do we want to support unpacked directories as extensions?".

For the RuntimeInfo interface, is it designed to provide the install directory or a list of URLs representing extension SCDLs (by reading the code, this is how the interface is used today)? If it's the later case, I think we should have the following RuntimeInfo interface:

public interface RuntimeInfo {
   public List<URL> getInstalledExtensions();
}

Any thoughts?

Thanks,
Raymond

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to