syncing up ImageJ version in Eclipse

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
15 messages Options
Reply | Threaded
Open this post in threaded view
|

syncing up ImageJ version in Eclipse

Neil Fazel
I've debugged an ImageJ Java plugin in Eclipse. The plugin works now if launched in Eclipse, but not if run using Plugins -> Compile and Run... from a standalone ImageJ.

I figured the reason the plugin doesn't work outside Eclipse is because of ImageJ and Java version differences inside and outside Eclipse. This is what I have:

- ImageJ version in Eclipse:

    1.48n (from release-notes.html in the ij package in Eclipse)
    1.48o (from pom.xml  in the ij package in Eclipse)
    1.47t with Java version 1.6.0_65 (64-bit)  (from About ImageJ dialog when ImageJ is launched in Eclipse)

- ImageJ version (standalone):

    1.48p9 with Java version 1.6.0_65 (32-bit)  (from About ImageJ dialog)

I'm not familiar enough yet with Java version control and GIT. What's the best way to to sync up everything and get the plugin to run outside Eclipse?

I set up ImageJ in Eclipse and developed the plugin using information from

http://www.youtube.com/watch?v=XyfE_fVphCs&list=UUOXCsWKZNGez9QOQMWw-Qww
http://www.youtube.com/watch?v=Ac-6gJ2eRb0&list=UUOXCsWKZNGez9QOQMWw-Qww
https://github.com/imagej/minimal-ij1-plugin


Thanks,
Neil

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: syncing up ImageJ version in Eclipse

dscho
Hi Neil,

On Fri, 10 Jan 2014, Neil Fazel wrote:

> I've debugged an ImageJ Java plugin in Eclipse. The plugin works now if
> launched in Eclipse, but not if run using Plugins -> Compile and Run...
> from a standalone ImageJ.
>
> I figured the reason the plugin doesn't work outside Eclipse is because
> of ImageJ and Java version differences inside and outside Eclipse. This
> is what I have:
>
> - ImageJ version in Eclipse:
>
>     1.48n (from release-notes.html in the ij package in Eclipse)
>     1.48o (from pom.xml  in the ij package in Eclipse)
>     1.47t with Java version 1.6.0_65 (64-bit)  (from About ImageJ dialog when ImageJ is launched in Eclipse)
>
> - ImageJ version (standalone):
>
>     1.48p9 with Java version 1.6.0_65 (32-bit)  (from About ImageJ dialog)
>
> I'm not familiar enough yet with Java version control and GIT. What's the best way to to sync up everything and get the plugin to run outside Eclipse?
>
> I set up ImageJ in Eclipse and developed the plugin using information from
>
> http://www.youtube.com/watch?v=XyfE_fVphCs&list=UUOXCsWKZNGez9QOQMWw-Qww
> http://www.youtube.com/watch?v=Ac-6gJ2eRb0&list=UUOXCsWKZNGez9QOQMWw-Qww
> https://github.com/imagej/minimal-ij1-plugin

Since you based your work on minimal-ij1-plugin, I guess you have the
pom-scijava as parent project? If so, it should be as easy as listing the
imagej1.version in the <properties> section:

        <properties>
                <imagej1.version>1.48o</imagej1.version>
        </properties>

Please note that the daily builds are *not* deployed; Wayne actually does
not provide the Maven artifacts, nor does he tag releases in the source
code repository. Instead, there is a Jenkins job monitoring the "News"
page on Wayne's web site that downloads the newest source code whenever
the web site indicates that there is a new version and builds and deploys
it (actually, it does a few more things than that, for example verify that
the newest sources match the version because there have been times in the
past when the newest version's source code was not available for a couple
of days; a *very* early version of the Jenkins job actually deployed an
obsolete version as a result).

Ciao,
Johannes

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: syncing up ImageJ version in Eclipse

Neil Fazel
Hi Johannes,

        Yes, I based the plugin on your minimal-ij1-plugin. I followed your suggestion and added a line to pom.xml. Now it looks like this:

        <properties>
                <javac.path>${java.home}/../lib/tools.jar</javac.path>
                <imagej1.version>1.48o</imagej1.version>
        </properties>

Then I tried to rebuild; I'm not sure if it was successful though:

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
[INFO] Scanning for projects...
[WARNING]
[WARNING] Some problems were encountered while building the effective model for net.imagej:ij:jar:1.48o
[WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-javadoc-plugin is missing. @ line 49, column 12
[WARNING]
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING]
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING]
[INFO]                                                                        
[INFO] ------------------------------------------------------------------------
[INFO] Building ImageJ 1.48o
[INFO] ------------------------------------------------------------------------
....



What am I missing here?

Thanks,
Neil

On Jan 10, 2014, at 1:15 PM, Johannes Schindelin wrote:

> Hi Neil,
>
> On Fri, 10 Jan 2014, Neil Fazel wrote:
>
>> I've debugged an ImageJ Java plugin in Eclipse. The plugin works now if
>> launched in Eclipse, but not if run using Plugins -> Compile and Run...
>> from a standalone ImageJ.
>>
>> I figured the reason the plugin doesn't work outside Eclipse is because
>> of ImageJ and Java version differences inside and outside Eclipse. This
>> is what I have:
>>
>> - ImageJ version in Eclipse:
>>
>>    1.48n (from release-notes.html in the ij package in Eclipse)
>>    1.48o (from pom.xml  in the ij package in Eclipse)
>>    1.47t with Java version 1.6.0_65 (64-bit)  (from About ImageJ dialog when ImageJ is launched in Eclipse)
>>
>> - ImageJ version (standalone):
>>
>>    1.48p9 with Java version 1.6.0_65 (32-bit)  (from About ImageJ dialog)
>>
>> I'm not familiar enough yet with Java version control and GIT. What's the best way to to sync up everything and get the plugin to run outside Eclipse?
>>
>> I set up ImageJ in Eclipse and developed the plugin using information from
>>
>> http://www.youtube.com/watch?v=XyfE_fVphCs&list=UUOXCsWKZNGez9QOQMWw-Qww
>> http://www.youtube.com/watch?v=Ac-6gJ2eRb0&list=UUOXCsWKZNGez9QOQMWw-Qww
>> https://github.com/imagej/minimal-ij1-plugin
>
> Since you based your work on minimal-ij1-plugin, I guess you have the
> pom-scijava as parent project? If so, it should be as easy as listing the
> imagej1.version in the <properties> section:
>
> <properties>
> <imagej1.version>1.48o</imagej1.version>
> </properties>
>
> Please note that the daily builds are *not* deployed; Wayne actually does
> not provide the Maven artifacts, nor does he tag releases in the source
> code repository. Instead, there is a Jenkins job monitoring the "News"
> page on Wayne's web site that downloads the newest source code whenever
> the web site indicates that there is a new version and builds and deploys
> it (actually, it does a few more things than that, for example verify that
> the newest sources match the version because there have been times in the
> past when the newest version's source code was not available for a couple
> of days; a *very* early version of the Jenkins job actually deployed an
> obsolete version as a result).
>
> Ciao,
> Johannes


--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: syncing up ImageJ version in Eclipse

dscho
Hi Neil,

On Fri, 10 Jan 2014, Neil Fazel wrote:

> Yes, I based the plugin on your minimal-ij1-plugin. I followed your suggestion and added a line to pom.xml. Now it looks like this:
>
> <properties>
> <javac.path>${java.home}/../lib/tools.jar</javac.path>
> <imagej1.version>1.48o</imagej1.version>
> </properties>
>
> Then I tried to rebuild; I'm not sure if it was successful though:
>
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> [INFO] Scanning for projects...
> [WARNING]
> [WARNING] Some problems were encountered while building the effective model for net.imagej:ij:jar:1.48o

I am probably missing something... did you change the groupId and
artifactId of your plugin?

If you have a GitHub repository with the code it might be easier for us to
discuss things there...

Ciao,
Johannes

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: syncing up ImageJ version in Eclipse

Neil Fazel
In reply to this post by Neil Fazel
Hi Johannes,

        Thanks for your help. I didn't change the parent groupId and artifactId, only the plugin's. (You may see that in the attached screenshot.)

I actually don't have a GitHub repository yet. I followed your instructions but stopped before publishing the repository.

I can now launch both ImageJ and my plugin (called NNMA) in Eclipse.  It seems though that my plugin references ij-1.47t.tar in its Maven Dependencies (not sure how this happened) and as a result launches ImageJ version 1.47t. This is not the version of ImageJ in Eclipse (1.48o).

It appears as though my plugin would work in Eclipse even if I deleted ImageJA master since it's not being referenced. But I haven't tried this. Ideally I would like my plugin in Eclipse to reference the same ImageJ which I run standalone outside Eclipse, instead of having 3 separate ImageJs.

The screenshot shows Eclipse with both ij (ImageJA master) and my plugin (NNMA) running and the dialog from Help -> About Imagej... being displayed for both. The file pom.xml for the plugin is also displayed.

Would you be able to confirm whether the setup looks correct for debugging a plugin (not ImageJ itself)?

Thanks,
Neil

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html

Screen shot 2014-01-11 at 11.09.25 AM.png (448K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: syncing up ImageJ version in Eclipse

ctrueden
Hi Neil,

> It seems though that my plugin references ij-1.47t.tar in its Maven
> Dependencies (not sure how this happened) and as a result launches
> ImageJ version 1.47t. This is not the version of ImageJ in Eclipse
> (1.48o).

You can control this by adding the following section to your pom.xml:

<properties>
  <imagej1.version>1.48o</imagej1.version>
</properties>

The default value of this property (in your case: 1.47t) is defined in the
POM's parent: pom-scijava. E.g.:
http://maven.imagej.net/content/repositories/releases/org/scijava/pom-scijava/1.49/pom-scijava-1.49.pom

One of the functions of the pom-scijava parent is to manage many such
versions for you. But if you need explicit control, overriding the
properties as above should work just fine.

Regards,
Curtis


On Mon, Jan 13, 2014 at 10:48 AM, Neil Fazel <[hidden email]>wrote:

> Hi Johannes,
>
>         Thanks for your help. I didn't change the parent groupId and
> artifactId, only the plugin's. (You may see that in the attached
> screenshot.)
>
> I actually don't have a GitHub repository yet. I followed your
> instructions but stopped before publishing the repository.
>
> I can now launch both ImageJ and my plugin (called NNMA) in Eclipse.  It
> seems though that my plugin references ij-1.47t.tar in its Maven
> Dependencies (not sure how this happened) and as a result launches ImageJ
> version 1.47t. This is not the version of ImageJ in Eclipse (1.48o).
>
> It appears as though my plugin would work in Eclipse even if I deleted
> ImageJA master since it's not being referenced. But I haven't tried this.
> Ideally I would like my plugin in Eclipse to reference the same ImageJ
> which I run standalone outside Eclipse, instead of having 3 separate
> ImageJs.
>
> The screenshot shows Eclipse with both ij (ImageJA master) and my plugin
> (NNMA) running and the dialog from Help -> About Imagej... being displayed
> for both. The file pom.xml for the plugin is also displayed.
>
> Would you be able to confirm whether the setup looks correct for debugging
> a plugin (not ImageJ itself)?
>
> Thanks,
> Neil
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: syncing up ImageJ version in Eclipse

dscho
In reply to this post by Neil Fazel
Hi Neil,

On Mon, 13 Jan 2014, Neil Fazel wrote:

> Thanks for your help. I didn't change the parent groupId and
> artifactId, only the plugin's. (You may see that in the attached
> screenshot.)

Ah, it seems that your pom-scijava version defines the outdated ImageJ 1.x
version [*1*]. The current pom-scijava version is 1.118 and it lists 1.48o
as ImageJ 1.x version (as you can verify by directing your web browser to
http://maven.imagej.net/index.html#nexus-search;quick~pom-scijava and
clicking on the link in the "Artifact" tab on the lower right).

Ciao,
Johannes

Footnote *1*: Please note that pom-scijava is the suggested parent project
for all scientific Java projects. The pom-scijava project advances with
the newest releases of the referenced projects so that you can always be
certain to reference a matching set of versions. This also means that
pom-scijava advances quite fast (at the moment, roughly ten versions are
releases every month), but you do *not* have to follow them slavishly.
Updating the version of your project's parent (pom-scijava) only every
once in a while is perfectly fine.

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: syncing up ImageJ version in Eclipse

Neil Fazel
In reply to this post by Neil Fazel
Thanks Johannes. I'm afraid you're talking over my head, since I'm not familiar with Java configuration management (I come from the C++ world). I figured this much: you wanted me to update pom-scijava version to 1.118 in pom.xml. I did this. Now the plugin no longer runs because ij is not resolved. This brings me back to the question I asked before: how can I get the plugin in Eclipse to reference ij in Eclipse? When I updated  pom-scijava version to 1.118, the file ij-1.47t.jar in my plugin's Maven dependencies disappeared and was not replaced by something else, e.g. ij-1.48.o.jar. Since I have imported ij into Eclipse, the plugin should not even need its own private copy of ij in Maven Dependencies, but it seems it does. Am I missing something?

Thanks,
Neil

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: syncing up ImageJ version in Eclipse

ctrueden
Hi Neil,

> Since I have imported ij into Eclipse, the plugin should not even need
> its own private copy of ij in Maven Dependencies, but it seems it
> does. Am I missing something?

Your plugin declares a dependency on some version V1 of ImageJ (defined in
its pom.xml).
Your Eclipse has an ImageJ project at some version V2 (defined in its
pom.xml).

If V1 == V2, Eclipse will use a project linkage, as you wish.

If V1 != V2, Eclipse will resolve your plugin's ImageJ dependency from a
binary artifact which *is* the proper version.

To address this, change your project to depend on the same version of
ImageJ you have imported into Eclipse. The simplest way to do this (thanks
to pom-scijava's use of version properties) is to add the blurb I mentioned
in my previous mail:

<properties>
  <imagej1.version>1.48o</imagej1.version>
</properties>

Regards,
Curtis


On Mon, Jan 13, 2014 at 12:32 PM, Neil Fazel <[hidden email]>wrote:

> Thanks Johannes. I'm afraid you're talking over my head, since I'm not
> familiar with Java configuration management (I come from the C++ world). I
> figured this much: you wanted me to update pom-scijava version to 1.118 in
> pom.xml. I did this. Now the plugin no longer runs because ij is not
> resolved. This brings me back to the question I asked before: how can I get
> the plugin in Eclipse to reference ij in Eclipse? When I updated
>  pom-scijava version to 1.118, the file ij-1.47t.jar in my plugin's Maven
> dependencies disappeared and was not replaced by something else, e.g.
> ij-1.48.o.jar. Since I have imported ij into Eclipse, the plugin should not
> even need its own private copy of ij in Maven Dependencies, but it seems it
> does. Am I missing something?
>
> Thanks,
> Neil
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: syncing up ImageJ version in Eclipse

dscho
In reply to this post by Neil Fazel
Hi Neil,

please note that I have to juggle a couple of email conversations in
parallel at any given time. As such, it makes it hard (and a little
annoying) to read responses that leave it to me to figure out the context
of the current conversation.

In contrast, an example of a well-crafted mail that does give the reader a
lot of pleasure by providing the right amount of context:
http://thread.gmane.org/gmane.comp.java.imagej/31251/focus=31265

I mention this because I have a feeling that you will want me to continue
giving you feedback, and I find myself starting to prefer to reply to
mails that place less burden of reconstructing what that mail is all about
on me.

Having said that, here is my reply to your mail, with a *little* context:

On Mon, 13 Jan 2014, Neil Fazel wrote:

> you wanted me to update pom-scijava version to 1.118 in pom.xml. I did
> this. Now the plugin no longer runs because ij is not resolved.

My guess is that you start your plugin in a different way than suggested.
In particular, because Eclipse seems to be able to compile the plugin (or
does it not? It is not quite clear to me from your description), ImageJ
1.x *is* there and the only reason it cannot be resolved is that Eclipse
is not allowed to resolve it via the Maven configuration.

> Since I have imported ij into Eclipse, the plugin should not even need
> its own private copy of ij in Maven Dependencies, but it seems it does.

There you go, that is the problem: the extra import of ij into Eclipse
(which was probably done using one specific version in the Maven
repository).

Therefore my best guess suggests that Eclipse is not allowed to run the
plugin using the standard way (via Run>Run As>...).

You might want to follow the description in the following Fiji Wiki page
that tries to help you debugging things in an Integrated Development
Environment such as Eclipse:

        http://fiji.sc/Debugging#Debugging_plugins_in_an_IDE_.28Netbeans.2C_IntelliJ.2C_Eclipse.2C_etc.29

Ciao,
Johannes

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: syncing up ImageJ version in Eclipse

Neil Fazel
In reply to this post by Neil Fazel
Hi Curtis,

   Thanks for the tip on adding <imagej1.version>1.48o</imagej1.version> to the properties. I did in fact try that out when you first suggested it; I seem to recall I couldn't get it to work. And I just tried it again.

This is the relevant parts of the plugin's pom.xml:

<dependencies>
  <dependency>
        <groupId>net.imagej</groupId>
        <artifactId>ij</artifactId>
        <version>${imagej1.version}</version>
   </dependency>
</dependencies>

...

<properties>
                <imagej1.version>1.48o</imagej1.version>
</properties>


Your description of when the locally imported ij is used makes perfect sense to me. The ij version imported in Eclipse is 1.48o and that is what I specified in the plugin's properties section using the imagej1.version tag. Somehow I still get "Import ij is not being resolved."

Thanks,
Neil

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: syncing up ImageJ version in Eclipse

ctrueden
Hi Neil,

> The ij version imported in Eclipse is 1.48o and that is what I
> specified in the plugin's properties section using the imagej1.version
> tag. Somehow I still get "Import ij is not being resolved."

Which version of Eclipse are you running? I suggest 4.3 if possible. Older
versions like 3.7 have occasional problems.

If you right-click your project and choose Maven > Update Project, does
that help?

Can't help too much further unless you post your code...

Regards,
Curtis


On Mon, Jan 13, 2014 at 1:48 PM, Neil Fazel <[hidden email]>wrote:

> Hi Curtis,
>
>    Thanks for the tip on adding <imagej1.version>1.48o</imagej1.version>
> to the properties. I did in fact try that out when you first suggested it;
> I seem to recall I couldn't get it to work. And I just tried it again.
>
> This is the relevant parts of the plugin's pom.xml:
>
> <dependencies>
>   <dependency>
>         <groupId>net.imagej</groupId>
>         <artifactId>ij</artifactId>
>         <version>${imagej1.version}</version>
>    </dependency>
> </dependencies>
>
> ...
>
> <properties>
>                 <imagej1.version>1.48o</imagej1.version>
> </properties>
>
>
> Your description of when the locally imported ij is used makes perfect
> sense to me. The ij version imported in Eclipse is 1.48o and that is what I
> specified in the plugin's properties section using the imagej1.version tag.
> Somehow I still get "Import ij is not being resolved."
>
> Thanks,
> Neil
>
>
>

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: syncing up ImageJ version in Eclipse

ctrueden
In reply to this post by Neil Fazel
Hi Neil,

> The 1.48o versions match between ij and plugin; but ij has parent
> version 1.116 and plugin has parent version 1.118 (which I updated
> based on tip from Johannes). Perhaps this is the issue.

Likely not a problem, though it wouldn't hurt to try unifying them, as a
test.

From the POM snippets you posted, I don't see any issue. There should be a
project linkage (do you see this if you expand the "Maven dependencies" of
your project?), and you should be able to access the ImageJ API from your
plugin.

In the Project menu of Eclipse, is "Build automatically" checked?

Regards,
Curtis


On Mon, Jan 13, 2014 at 2:19 PM, Neil Fazel <[hidden email]>wrote:

> For full disclosure, this is what I have in ij/pom.xml and
> myplugin/pom.xml:
>
> ij/pom.ml:
>
>   <parent>
>           <groupId>org.scijava</groupId>
>           <artifactId>pom-scijava</artifactId>
>           <version>1.116</version>
>   </parent>
>
>   <groupId>net.imagej</groupId>
>   <artifactId>ij</artifactId>
>   <version>1.48o</version>
>
> myplugin/pom.xml:
>
>   <parent>
>           <groupId>org.scijava</groupId>
>           <artifactId>pom-scijava</artifactId>
>           <version>1.118</version>
>   </parent>
>
>   <dependencies>
>           <dependency>
>                   <groupId>net.imagej</groupId>
>                   <artifactId>ij</artifactId>
>                   <version>${imagej1.version}</version>
>           </dependency>
>   </dependencies>
>
>   <properties>
>           <imagej1.version>1.48o</imagej1.version>
>   </properties>
>
>
> The 1.48o versions match between ij and plugin; but ij has parent version
> 1.116 and plugin has parent version 1.118 (which I updated based on tip
> from Johannes). Perhaps this is the issue.
>
> Neil
>
>
>

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: syncing up ImageJ version in Eclipse

Neil Fazel
In reply to this post by Neil Fazel
Hi Curtis,

   Thanks for helping. I answer your questions below:

> Which version of Eclipse are you running? I suggest 4.3 if possible.

   Eclipse Platform 4.3.1.M20130911-1000
   EPP Java Package 2.0.1.20130919-0803

> If you right-click your project and choose Maven > Update Project, does that help?

No.

> it wouldn't hurt to try unifying them [parent versions], as a test.

I set both to 1.118 and re-built ij. As you suspected, it didn't fix the plugin's build problem.

> In the Project menu of Eclipse, is "Build automatically" checked?

Yes.

> There should be a project linkage (do you see this if you expand the "Maven dependencies" of your project?), and you should be able to access the ImageJ API from your plugin.

ij does show up under plugin's Maven Dependencies, and when I right click and choose 'Go to Project', I'm taken to ij in Eclipse. I've attached a screenshot of how thing look in Eclipse.

> Can't help too much further unless you post your code...

I attached a screenshot, along with plugin's .java and pom.xml files to this message the first time I sent it, and the list refused to post it (not sure which one was problematic). I will send them to you by email.

Best regards,
Neil

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html
Reply | Threaded
Open this post in threaded view
|

Re: syncing up ImageJ version in Eclipse

ctrueden
Hi Neil,

> I attached a screenshot, along with plugin's .java and pom.xml files
> to this message the first time I sent it, and the list refused to post
> it (not sure which one was problematic). I will send them to you by
> email.

Thanks for sending the files.

Unfortunately, I am unable to reproduce your problem on my system. Here is
what I did with your files:

$ mkdir -p NNMA/src/main/java
$ mv pom.xml NNMA/
$ mv Nearest_Neighbor_Moving_Average.java NNMA/src/main/java/

Then imported the NNMA folder into Eclipse via File > Import > Existing
Maven Projects and all built successfully. I was able to run the class, too.

I don't see anything telling in the screenshot either.

There may be something confused in your Eclipse workspace. Try switching to
a fresh workspace (File > Switch Workspace > Other...) and importing the
project fresh there via File > Import > Existing Maven Projects.

Try it on a different machine, and/or in a VM with a different OS.

Regards,
Curtis


On Mon, Jan 13, 2014 at 3:16 PM, Neil Fazel <[hidden email]>wrote:

> Hi Curtis,
>
>    Thanks for helping. I answer your questions below:
>
> > Which version of Eclipse are you running? I suggest 4.3 if possible.
>
>    Eclipse Platform     4.3.1.M20130911-1000
>    EPP Java Package     2.0.1.20130919-0803
>
> > If you right-click your project and choose Maven > Update Project, does
> that help?
>
> No.
>
> > it wouldn't hurt to try unifying them [parent versions], as a test.
>
> I set both to 1.118 and re-built ij. As you suspected, it didn't fix the
> plugin's build problem.
>
> > In the Project menu of Eclipse, is "Build automatically" checked?
>
> Yes.
>
> > There should be a project linkage (do you see this if you expand the
> "Maven dependencies" of your project?), and you should be able to access
> the ImageJ API from your plugin.
>
> ij does show up under plugin's Maven Dependencies, and when I right click
> and choose 'Go to Project', I'm taken to ij in Eclipse. I've attached a
> screenshot of how thing look in Eclipse.
>
> > Can't help too much further unless you post your code...
>
> I attached a screenshot, along with plugin's .java and pom.xml files to
> this message the first time I sent it, and the list refused to post it (not
> sure which one was problematic). I will send them to you by email.
>
> Best regards,
> Neil
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html