Navigation: Programming Cookbook > Deploying Applications > Lagoon Deployment Tutorial >
To illustrate deployment we'll use the HelloWorld class. Display an instance of this class by evaluating:
The following window should appear.
Try clicking in the client area of the window and you should see a #doesNotUnderstand: walkback appear for the message #thisIsADeliberateError. This is a deliberate bug that has been coded in the HelloWorld class so that we can later illustrate how such a situation is handled in a run-time application. Terminate the walkback to continue with the tutorial.
Now we are going to deploy the application. As part of the image stripper setup we will need to install a new subclass of RuntimeSessionManager that invokes your application as part of its start up processing.
Take a look at the Hello World package and you'll see that it includes a class called HelloWorldSessionManager. Take a look at its #main method in the Class Browser. This method will be called during the final stages of image startup and you can see that its purpose is to create a suitable instance of the HelloWorld application window.
In Step 2 of the wizard enter the name of a suitable executable file to be generated, say Hello World.exe. Now use the drop-down list in Step 2 to choose HelloWorldSessionManager as the Runtime Session Manager to install.
You can leave all the other options at their default settings. Press the Deploy button. This will start the image stripping process and eventually create the executable for our "Hello World" application.
During the process, all the Dolphin tool windows will be closed and a progress dialog will appear to report on the stripping activity. The overall deployment process may take several minutes depending on the speed of your machine.
The resultant executable size should be around 440K (reported by Dolphin Smalltalk X6). Double-click the executable to invoke the "Hello World" window. Try clicking the mouse in the client area again. This time you'll notice that you don't get a Walkback but merely a simple message box to indicate the message not understood error. This is due to the fact that all the development tools have been stripped from the image and hence are not available at run-time. As you might imagine this can make debugging a run-time session system a little harder than in the development environment.