Difference between revisions of "Troubleshoot"

From WeizmannWiki
Jump to: navigation, search
Line 1: Line 1:
If play-out fails, it is recommended to compile it and then re-try.
+
== Unable to create LSC project ==
For compiling it, select the example project and from the menu bar, choose Project->Build All.
+
If this is a GWT-based example (i.e. GWTMemoryGame), select the project and click the 'GWT Compile Project' button on the toolbar.
+
  
If the problem persists, make sure aspects were generated. To generate aspects, you should follow these steps (these steps are done automatically when clicking 'Play-Out' button on the toolbar):
+
If you cannot find the 'New LSC Project' command in the 'File' menu, you may not be working with the PlayGo perspective. It is recommended to work with the provided PlayGo [http://www.eclipse.org/articles/using-perspectives/PerspectiveArticle.html perspective]. Working with the PlayGo perspective provides shortcuts to some operations (e.g., create a new LSC Project) and some views (e.g., the system model view). To change the active perspective to the PlayGo perspective, click the 'Open Perspective' button on the toolbar, select 'Other...' and select 'PlayGo':
* Select the project you want to play-out.
+
* Press the 'Build with S2A' icon in the toolbar or right click and chose 'Build with S2A'.
+
* Refresh the project directory, to make sure Eclipse loaded the newly generated aspects.
+
  
If aspect are still not in place, there may be something wrong with your [[Play-Out Configuration]].
+
[[Image:Open.perspective.jpg|800px]]
 +
 
 +
== Play-out failure  ==
 +
 
 +
'''Problem:''' Play-out fails.<br> '''Solution:''' Re-compile the LSC project by selecting and choosing Project-&gt;Build All, from the menu bar. If this is a GWT-based example, select the project and click the 'GWT Compile Project' button on the toolbar.
 +
 
 +
In case the problem persists, make sure the S2A aspects code was generated. To generate aspects:
 +
 
 +
#Select the LSC project.
 +
#Press the 'S2A Clean' button on the toolbar.
 +
#Press the 'Build with S2A' button on the toolbar.
 +
#To make sure Eclipse loaded the newly generated aspects, refresh the project directory by selecting the project, right-clicking it and selecting 'Refresh'
 +
 
 +
If the new aspects are still not in place, there may be something wrong with your [[S2A Configuration|Play-Out Configuration]].
 +
 
 +
== Error when launching PlayGo  ==
 +
 
 +
'''Problem''': When launching PlayGo, you get an error message: "The PlayGo executable launcher was unable to locate its companion shared library".<br> '''Solution''': This error occurs when extracting the downloaded zip file using the Windows 7 default unzip program. Use WinZip or any other program to extract this file.
 +
 
 +
== During play-out an event is executed in a loop  ==
 +
 
 +
'''Problem''': During play-out, an enabled event is executed multiple times although it was expected to be executed once.<br> '''Solution''': This may happen if the event has an argument that is an object (rather than a primitive type), and that the object's class is missing the implementation of the method 'equals'. Add an implementation of the 'equals' method and play-out again. <br> '''Explanation''': During play-out, S2A chooses an enabled event from a list of enabled events, based on the selected strategy. After executing the event, S2A advances the cut of all relevant LSCs. The process of advancing a cut is done by searching for a match between the executed event with the enabled event in all live copies, and with minimal events in all LSCs. The matching process tries to match the event name as well as its argument values. Non-primitive argument values are compared using the 'equals' method.

Revision as of 13:33, 2 January 2014

Unable to create LSC project

If you cannot find the 'New LSC Project' command in the 'File' menu, you may not be working with the PlayGo perspective. It is recommended to work with the provided PlayGo perspective. Working with the PlayGo perspective provides shortcuts to some operations (e.g., create a new LSC Project) and some views (e.g., the system model view). To change the active perspective to the PlayGo perspective, click the 'Open Perspective' button on the toolbar, select 'Other...' and select 'PlayGo':

Open.perspective.jpg

Play-out failure

Problem: Play-out fails.
Solution: Re-compile the LSC project by selecting and choosing Project->Build All, from the menu bar. If this is a GWT-based example, select the project and click the 'GWT Compile Project' button on the toolbar.

In case the problem persists, make sure the S2A aspects code was generated. To generate aspects:

  1. Select the LSC project.
  2. Press the 'S2A Clean' button on the toolbar.
  3. Press the 'Build with S2A' button on the toolbar.
  4. To make sure Eclipse loaded the newly generated aspects, refresh the project directory by selecting the project, right-clicking it and selecting 'Refresh'

If the new aspects are still not in place, there may be something wrong with your Play-Out Configuration.

Error when launching PlayGo

Problem: When launching PlayGo, you get an error message: "The PlayGo executable launcher was unable to locate its companion shared library".
Solution: This error occurs when extracting the downloaded zip file using the Windows 7 default unzip program. Use WinZip or any other program to extract this file.

During play-out an event is executed in a loop

Problem: During play-out, an enabled event is executed multiple times although it was expected to be executed once.
Solution: This may happen if the event has an argument that is an object (rather than a primitive type), and that the object's class is missing the implementation of the method 'equals'. Add an implementation of the 'equals' method and play-out again.
Explanation: During play-out, S2A chooses an enabled event from a list of enabled events, based on the selected strategy. After executing the event, S2A advances the cut of all relevant LSCs. The process of advancing a cut is done by searching for a match between the executed event with the enabled event in all live copies, and with minimal events in all LSCs. The matching process tries to match the event name as well as its argument values. Non-primitive argument values are compared using the 'equals' method.