SDA SE Wiki

Software Engineering for Smart Data Analytics & Smart Data Analytics for Software Engineering

User Tools

Site Tools


Some classes from the original project are missing in the output project

This should not happen. Write a bug report to rho [at] cs.uni-bonn.de. To solve this problem temporary open a file in the original project and click the Write all classes to output project button in the tool bar.

Unexpected (weaving) behavior

  • Unexpected weaving errors/problems
    • E.g. an advice does not work anymore although it worked fine before
  • Frozen weaving process
  • SWI-Prolog crashes notification

Solution

Often resetting JTransformer helps in these cases. Select the menu item JTransformer→Reset JTransformer and select the option “Also restart prolog processes”. This operation may take a while.

What does the "Unknown message: ERROR: cannot find tree with id <6 digit number>" exception mean?

“Something” went wrong in the weaving process. This is probably a bug in the LogicAJ compiler or in the JTransformer Framework.

Close Eclipse. Kill all xcpe/plwin.exe instances. Start Eclipse. Remove the JTransformer Nature. Restart Eclipse. Set the JTransformer Nature. If the problem remains the problem related to LogicAJ. Otherwise it its JTranformer related. The later has the advantage that you can go on with your work. Please report the bug in both cases logicaj@iai.uni-bonn.de Please attach (not more the last 300KB) of the files

<your workspace>\.metadata\.log
<your workspace>\.metadata\org.cs3.jtransformer\jtransformer.log

Problems with LAJ and Ubuntu? e.g. "Timeout while waiting for peer"

Debian/Ubuntu comes with a rather old swi-prolog version. This may lead to a range of error messages/problems like the one above.

Solution

  • At first install the original ubuntu packages to resolve all dependencies (get all necessary libraries)
  • Remove the SWI-Prolog packages
  • Download the latest stable release from the swi-prolog page (rpm package), use alien to convert it to a deb-package and install it on your system:

AspectJ (AJDT) compatibility

You must not install the AJDT in parallel with LogicAJ. The compilers are uncompatible. Weaving and most times also the compilation will fail.

Solution

First you have to remove the AJDT plug-in. But this not sufficient if you want to use an AspectJ project with LogicAJ or Java in general. When converting a Java project to an AspectJ project the Java builder was replaced by a AspectJ builder. To undo this replace the AspectJ builder in the .project file located in the project root. You will have to switch to Navigator view to see the file.

Replace the buildCommand

<buildCommand>
  <name>org.eclipse.ajdt.core.ajbuilder</name>
  <arguments>
  </arguments>
</buildCommand>

with

<buildCommand>
  <name>org.eclipse.jdt.core.javabuilder</name>
  <arguments>
  </arguments>
</buildCommand>

You may also remove the AspectJ nature:

<nature>org.eclipse.ajdt.ui.ajnature</nature>

You can disable the AspectJ plug-in (AJDT) by going through this path and click on the disable.

What should be done if you have disabled the AspectJ and there is still some compiler errors because of incompatibilities between AspectJ and LogicAJ compilers

Delete the project from workbench(but do not delete the contents) and import it once again.

What should you do if you have weaved an aspect and the process doesn't end in the progress bar or you can not cancel it?

Just restart the eclipse and disable the “Assign JTransformer Factbase” on the project, once enable this feature for the project and weave an aspect , now everything is OK.

What should be done if you see this Weave Error: "The target is only available in byte code" ?

Solution 1

Go to the JTransformer context menu → Reset JTransformer→ Also Restart Prolog Process

research/logicaj/faqui.txt · Last modified: 2018/05/09 01:59 (external edit)

SEWiki, © 2023