Builds

Windows, Linux and MacOS supported.

Minimum requirement (v1.0.3a onwards):

  • Eclipse 3.4
  • Java 1.5
Version Date Size Changes
v1.0.5a 13 Nov 2009 9.80MB
  • fix library loading path for mac
v1.0.4a 22 Oct 2009 9.80MB
  • fix concurrency bug in rendering minimap
v1.0.3a 14 Oct 2009 9.82MB
  • fixed null pointer error when generating model
    • ProjectModel.removePackage
  • speed up minimap
  • minimum requirement reduced to Java 1.5
v1.0.2a 12 Oct 2009 9.80MB
  • Added minimap
    • Shows camera frustum
    • Camera will look at selected view point on minimap
    • Toggle minimap on/off with button at view window
  • Text background is now colored
  • Number of methods in interface is mapped to pyramid size
v1.0.1a 09 Oct 2009 9.80MB
  • Updated graphics engine
  • Repackage plugin into one folder
  • Remove unwanted dangling test buttons

Install

Unzip content and paste them into plugin folder under your eclipse program, that is

“<eclipse_dir>/plugins”

Restart eclipse if it is running.

To visualize any project(s), right click and select “Visualize with Codstruction”. Multiple projects may be selected.

Source

Downlod source code


Advertisements

17 Responses to “Download”

  1. MayorA Says:

    Hi
    I get a NullPointer Exception when clicking visualize.

    Message:
    An internal error occurred during: “Constructing software models…”.

    Stack:
    java.lang.NullPointerException
    at codstruction.model.ProjectModel.removePackage(ProjectModel.java:63)
    at codstruction.model.ProjectModel.addPackage(ProjectModel.java:39)
    at codstruction.model.builder.StructureModelBuilder.handleClassType(StructureModelBuilder.java:493)
    at codstruction.model.builder.StructureModelBuilder.handleTypesOf(StructureModelBuilder.java:562)
    at codstruction.model.builder.StructureModelBuilder.fileHandler(StructureModelBuilder.java:584)
    at codstruction.model.builder.StructureModelBuilder.folderHandler(StructureModelBuilder.java:655)
    at codstruction.model.builder.StructureModelBuilder.folderHandler(StructureModelBuilder.java:658)
    at codstruction.model.builder.StructureModelBuilder.folderHandler(StructureModelBuilder.java:658)
    at codstruction.model.builder.StructureModelBuilder.folderHandler(StructureModelBuilder.java:658)
    at codstruction.model.builder.StructureModelBuilder.folderHandler(StructureModelBuilder.java:658)
    at codstruction.model.builder.StructureModelBuilder.praseProject(StructureModelBuilder.java:103)
    at codstruction.model.builder.StructureModelBuilder.build(StructureModelBuilder.java:81)
    at codstruction.model.builder.ModelBuilderJob.run(ModelBuilderJob.java:26)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

    Session Data:
    eclipse.buildId=M20090917-0800
    java.version=1.6.0_13
    java.vendor=Sun Microsystems Inc.
    BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=de_CH
    Framework arguments: -product org.eclipse.epp.package.java.product
    Command-line arguments: -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.java.product

    • lttlflla Says:

      Thanks for the bug report, it will be fixed and the update will be unloaded soon.

      • MayorA Says:

        Hi,
        I tried version 1.0.3a. The above error has gone now, but now I get the next exception:

        Message:
        Unhandled event loop exception

        Stack Trace:
        org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.ArrayIndexOutOfBoundsException: 0)
        at org.eclipse.swt.SWT.error(SWT.java:3884)
        at org.eclipse.swt.SWT.error(SWT.java:3799)
        at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:137)
        at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3855)
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3476)
        at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405)
        at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
        at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221)
        at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
        at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
        at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
        at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
        at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
        Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
        at org.lwjgl.opengl.GL11.glTexCoordPointer(GL11.java:2986)
        at com.jme.renderer.lwjgl.LWJGLRenderer.predrawGeometry(LWJGLRenderer.java:1502)
        at com.jme.renderer.lwjgl.LWJGLRenderer.draw(LWJGLRenderer.java:999)
        at com.jme.scene.TriMesh.draw(TriMesh.java:240)
        at com.jme.renderer.RenderQueue.renderOrthoBucket(RenderQueue.java:302)
        at com.jme.renderer.RenderQueue.renderBuckets(RenderQueue.java:239)
        at com.jme.renderer.Renderer.renderQueue(Renderer.java:389)
        at codstruction.canvas.Minimap.draw(Minimap.java:232)
        at codstruction.canvas.Canvas.draw(Canvas.java:551)
        at codstruction.views.View$1.run(View.java:92)
        at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
        at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
        … 22 more

        I am using:
        Eclipse Version 3.5.1.R35x_v20090910-9gEeG1_FthkNDSP2odXdThaOu9GFDPn83DGB7
        Java jdk1.6.0_06

      • lttlflla Says:

        Thanks for the bug report. I will look into this.

  2. Thomas Says:

    i tried it with a Eclipse Ganymede, but he won’t even try to initialize it.
    i can’t choose Visualize when i right click a project and there is no Error log.

  3. Thomas Says:

    i have tried it, for som days now, and it is realy greate.
    i have one suggestion, can you make the visualization independen from the package structure, so you can see the inheritance over all packages.

  4. Piers Says:

    Hi there really like the concept but I get an error when trying to visualize.

    At a guess I would say that the Codstruction doesn’t like the space in my path to eclipse.

    java.lang.UnsatisfiedLinkError: Expecting an absolute path of the library: Applications/eclipse galileo/plugins/org.codstruction_1.0.4/natives/liblwjgl.jnilib
    at java.lang.Runtime.load0(Runtime.java:766)
    at java.lang.System.load(System.java:968)
    at org.lwjgl.Sys$1.run(Sys.java:69)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.lwjgl.Sys.doLoadLibrary(Sys.java:65)
    at org.lwjgl.Sys.loadLibrary(Sys.java:81)
    at org.lwjgl.Sys.(Sys.java:98)
    at org.lwjgl.opengl.GLContext.(GLContext.java:108)
    at codstruction.canvas.Canvas.init(Canvas.java:165)
    at codstruction.canvas.Canvas.(Canvas.java:146)
    at codstruction.views.View.createPartControl(View.java:85)
    at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:367)
    at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:226)
    at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)
    at org.eclipse.ui.internal.Perspective.showView(Perspective.java:2228)
    at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1067)
    at org.eclipse.ui.internal.WorkbenchPage$20.run(WorkbenchPage.java:3816)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3813)
    at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3789)
    at codstruction.views.View.open(View.java:255)
    at codstruction.actions.SelectProjectAction.run(SelectProjectAction.java:70)
    at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:251)
    at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
    at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
    at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:3542)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1247)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1270)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1255)
    at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1076)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3440)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3099)
    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405)
    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
    at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:592)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1311)

  5. David Steiner Says:

    very cool! v1.0.5a works here. there were some problems getting it running though, when launching eclipse:

    ./eclipse
    java.lang.NullPointerException
    at org.eclipse.core.internal.runtime.Activator.getURLConverter(Activator
    .java:313)
    at org.eclipse.core.runtime.FileLocator.toFileURL(FileLocator.java:205)
    at codstruction.CodConfig$LWJGL.setLibPath(CodConfig.java:27)
    at codstruction.canvas.Canvas.init(Canvas.java:159)
    at codstruction.canvas.Canvas.(Canvas.java:154)
    at codstruction.views.View.createPartControl(View.java:85)
    at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.
    java:367)
    […]

    however if i right click on the project and select “Visualize with Codstruction” it works. i’ll be watching this project and hope it evolves 🙂 i’m thinking of doing a similar project. greetings, david

  6. David Steiner Says:

    Could you please post the source code. I noticed on the eclipse plugins page that it’s released as LGPL. I’m interested in looking at the code and maybe doing some development. Thanks!

  7. Stefan Says:

    I encountered following exception:

    java.lang.NullPointerException
    at codstruction.canvas.Minimap.update(Minimap.java:119)
    at codstruction.canvas.Canvas.resize(Canvas.java:513)
    at codstruction.canvas.Canvas.init(Canvas.java:182)
    at codstruction.canvas.Canvas.(Canvas.java:154)
    at codstruction.views.View.createPartControl(View.java:85)
    at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:367)
    at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:226)
    at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)
    at org.eclipse.ui.internal.Perspective.showView(Perspective.java:2229)
    at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1067)
    at org.eclipse.ui.internal.WorkbenchPage$20.run(WorkbenchPage.java:3816)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3813)
    at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3789)
    at codstruction.views.View.open(View.java:255)
    at codstruction.actions.SelectProjectAction.run(SelectProjectAction.java:70)
    at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:251)
    at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
    at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
    at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3880)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3473)
    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405)
    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
    at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1311)


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: