Hello,

I'm trying to make clojure and Eclipse play well together for writing
Eclipse plugins.

I have played with (proxy) but I encountered classloader problems that are
currently beyond my knowledge (and I want to get something up and running
quickly so I didn't take the time to broaden my knowledge yet).

So I came back to gen-class with the hope that I will not encounter the same
problems in my usecase.

I have this error when the class I've created and compiled via gen-class is
loaded :

The selected wizard could not be started.
  Plug-in classpath.issue was unable to load class
classpath.issue.GranuleImportWizardImpl.
  Repetitive method name/signature in class file
classpath/issue/GranuleImportWizardImpl

Do you know what could cause this "repetitive method name/signature in
class" ?

Here is the code:

(ns classpath.issue.granule-import
  (:import (java.io                                        File
                                                           FileInputStream

FileNotFoundException
                                                           InputStream)
           (org.eclipse.jface.wizard                       Wizard
                                                           WizardPage)
           (org.eclipse.jface.preference                   FileFieldEditor)
           (org.eclipse.ui                                 IImportWizard
                                                           IWorkbench)
           (org.eclipse.core.runtime                       IPath
                                                           IStatus
                                                           Path
                                                           Status)
           (org.eclipse.core.resources                     ResourcesPlugin)
           (org.eclipse.jface.viewers
IStructuredSelection)
           (org.eclipse.swt                                SWT)
           (org.eclipse.swt.events                         ModifyEvent
                                                           ModifyListener)
           (org.eclipse.swt.layout                         GridData
                                                           GridLayout)
           (org.eclipse.swt.widgets                        Composite
                                                           Text
                                                           Label))
  (:use    classpath.issue.core
           classpath.issue.jface-preference)
  (:load   "wizard_page")
  (:gen-class
   :name       classpath.issue.GranuleImportWizardImpl
   :extends    org.eclipse.jface.wizard.Wizard
   :implements [org.eclipse.ui.IImportWizard]
   :state      state
   :init       ctor
   :constructors [[] []]
   :prefix wiz-
   :exposes-methods {addPages super-addPages}))

(defn perform-finish2
  []
  (.sdlength "does it work?")
  true)

(defn wiz-ctor []
  [[] (atom {})]) ; { :a-page [widget state-atom] ... }

(defn wiz-init [this #^IWorkbench workbench, #^IStructuredSelection
selection]
    (.setWindowTitle this "File Import Wizard")
    (.setNeedsProgressMonitor this true)
    (swap! (.state this) assoc :main-page (make-wizard-page "Import Granules
from file" selection)))

(defn wiz-addPages [this]
    (.super-addPages this)
    (.addPage this (first (get (deref (.state this)) :main-page))))

(defn wiz-performFinish [this]
    (println "in clojure!")
    (perform-finish2))


Thanks in advance,

-- 
Laurent

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to