TopLogic - the automated application engine
  • Releases
  • Dokumentation
  • Github
  • Discord
  1. Home
  2. Releases
  3. TL_7.3.0_01
  4. #25985

7.3.0_01
TopLogic Release

2021-05-19

defect

major
#25958
Ant targets in Eclipse workspace fails with "The linked resource '/com.top_logic.basic.core/src' in project '.org.eclipse.jdt.core.external.folders' does not exist
#25969
Application hangs constantly with wait cursor
#25985
TL-Studio: Application startup fails due to unresolved dependency
minor
#25957
Error when updating assization caches from the commit
defect

major

#25985

TL-Studio: Application startup fails due to unresolved dependency

AppEditors
Exception in thread "main" java.lang.RuntimeException: Failed to build project dependencies: /home/bhu/devel/workspace-toplogic-studio/com.top_logic.graph.diagramjs.server
	at com.top_logic.basic.core.workspace.Workspace.buildDependencies(Workspace.java:617)
    at com.top_logic.basic.core.workspace.Workspace.getDirectDependencies(Workspace.java:195)
	at com.top_logic.basic.core.workspace.Workspace.fillTransitiveDependencies(Workspace.java:596)
    at com.top_logic.basic.core.workspace.Workspace.fillTransitiveDependencies(Workspace.java:605)
	at com.top_logic.basic.core.workspace.Workspace.getTransitiveDependencies(Workspace.java:177)
    at com.top_logic.basic.core.workspace.Workspace.getResourcePath(Workspace.java:117)
	at com.top_logic.basic.core.workspace.Workspace.getResourcePath(Workspace.java:87)
    at com.top_logic.ide.jetty.Bootstrap.start(Bootstrap.java:109)
	at com.top_logic.ide.jetty.Bootstrap.run(Bootstrap.java:93)
    at com.top_logic.ide.jetty.Bootstrap.main(Bootstrap.java:66)
Caused by: java.io.IOException: Cannot resolve project directory for 'com.top_logic.graph.diagramjs.client': '/home/bhu/devel/workspace-toplogic-studio' is neither an Eclipse workspace nor does it contain a subfolder named 'com.top_logic.graph.diagramjs.client'.
	at com.top_logic.basic.core.workspace.Workspace.resolveProjectDir(Workspace.java:213)
    at com.top_logic.basic.core.workspace.Workspace.tryBuildDependencies(Workspace.java:650)
	at com.top_logic.basic.core.workspace.Workspace.buildDependencies(Workspace.java:615)
    ... 9 more

Workaround

  • Remove the project dependency `com.top_logic.graph.diagramjs.client` from the module `com.top_logic.graph.diagramjs.server`.

Analysis

GWT modules are referenced by their server modules not as classpath dependencies but as project references. This is done so that the GWT modules are built before their server modules, allowing the resulting JavaScript to be served by the server module. However, GWT modules are not included in the TL Studio package, as they are no longer needed for development. On the other hand, project dependencies are used to determine a module’s resource path. This, in turn, is necessary so that pure JavaScript projects can provide an application configuration by including their JavaScript files in the application configuration. To do this, they require a dependency on tl-core, as only tl-core provides the corresponding configuration interfaces.

Solution

Project dependencies are treated only as optional dependencies at runtime. If they exist, they are included in the resource path. If they do not exist, they are ignored.

Test

  • In tl-studio, launch the tl-demo module in Eclipse.
  • Build a WAR of tl-demo from tl-studio.
  • Get Started
  • Github
  • Discord
  • Das Unternehmen hinter TopLogic
  • Softwareentwicklung heute
  • Kontakt

© Copyright – Business Operation Systems GmbH

  • top-logic.com
  • Nutzungsbedingungen
  • Impressum
  • Rechtlicher Hinweis
  • Datenschutz
  • DE
  • Login