[jsword-devel] maven vs ant

trent.jsword at trentonadams.ca trent.jsword at trentonadams.ca
Sun Feb 21 13:03:16 MST 2010


Yeah, I miss-read the error.  I assumed it was looking for the apple stuff, and you're right, it apparently is include in the java system itself.

So yeah, I added the jsword-common-swing as well, and it just worked. 

Okay, extract these poms now, over top of your others, and it should just work.  I already tried this on my mac. Then run this.

mvn -Prun install

----- "DM Smith" <dmsmith at crosswire.org> wrote:

> From: "DM Smith" <dmsmith at crosswire.org>
> To: "J-Sword Developers Mailing List" <jsword-devel at crosswire.org>
> Sent: Sunday, February 21, 2010 1:52:06 PM GMT -06:00 US/Canada Central
> Subject: Re: [jsword-devel] maven vs ant
>
> On Feb 21, 2010, at 2:27 PM, trent.jsword at trentonadams.ca wrote:
> 
> > Yeah, that's the one I mentioned, about needing the aqua dependency.
>  So, you need to add a dependency to the common-aqua/pom.xml
> 
> I'm not sure I understand. The error was that it couldn't find
> common-swing. When I added the jsword-common-swing dependency I found
> in the bibledesktop/pom.xml, the error went away.
> 
> The common-aqua depends on ui.jar which is part of Apple's Java.
> Shouldn't it just find it? Granted we don't have a stub for it when on
> any other platform. I could create one if it is really needed.
> 
> > 
> > So, take the apple jar that you need, and do something like this,
> but adapt it as necessary...
> > mvn deploy:deploy-file -Dfile=aqua-1.0.jar -DartifactId=aqua
> -Dpackaging=jar -DgroupId=com.apple -Dversion=1.0
> -Durl=file:///home/trenta/.m2/repository/
> > 
> > All the above does, is install the jar into your local repository at
> ~/.m2/repository so that ant doesn't have to download it from
> somewhere, as it doesn't exist anywhere on the web.  local repos are
> structured the same as remote ones, just the protocol is file://
> instead of http://
> > 
> > Whatever you use for groupId and artifactId, your dependency in the
> common-aqua/pom.xml should be the same.  For example...
> >    <dependency>
> >      <groupId>com.apple</groupId>
> >      <artifactId>aqua</artifactId>
> >      <version>1.0</version>
> >      <scope>compile</scope>
> >    </dependency>
> > 
> > ----- "DM Smith" <dmsmith at crosswire.org> wrote:
> > 
> >> From: "DM Smith" <dmsmith at crosswire.org>
> >> To: "J-Sword Developers Mailing List" <jsword-devel at crosswire.org>
> >> Sent: Sunday, February 21, 2010 1:16:57 PM GMT -06:00 US/Canada
> Central
> >> Subject: Re: [jsword-devel] maven vs ant
> >> 
> >> I get the error while building common-aqua:
> >> 
> >> [INFO] Building common-aqua
> >> [INFO]    task-segment: [test]
> >> [INFO]
> >>
> ------------------------------------------------------------------------
> >> [INFO] [resources:resources {execution: default-resources}]
> >> [INFO] Using 'iso-8859-1' encoding to copy filtered resources.
> >> [INFO] Copying 0 resource
> >> [INFO] [compiler:compile {execution: default-compile}]
> >> [INFO] Compiling 1 source file to
> >> /Users/dm/Documents/JSword/common-aqua/target/classes
> >> [INFO]
> >>
> ------------------------------------------------------------------------
> >> [ERROR] BUILD FAILURE
> >> [INFO]
> >>
> ------------------------------------------------------------------------
> >> [INFO] Compilation failure
> >> 
> >>
> /Users/dm/Documents/JSword/common-aqua/src/main/java/org/crosswire/common/aqua/OSXAdapter.java:[3,33]
> >> package org.crosswire.common.swing does not exist
> >> 
> >>
> /Users/dm/Documents/JSword/common-aqua/src/main/java/org/crosswire/common/aqua/OSXAdapter.java:[11,23]
> >> cannot find symbol
> >> symbol  : class Actionable
> >> location: class org.crosswire.common.aqua.OSXAdapter
> >> 
> >>
> /Users/dm/Documents/JSword/common-aqua/src/main/java/org/crosswire/common/aqua/OSXAdapter.java:[25,49]
> >> cannot find symbol
> >> symbol  : class Actionable
> >> location: class org.crosswire.common.aqua.OSXAdapter
> >> 
> >>
> /Users/dm/Documents/JSword/common-aqua/src/main/java/org/crosswire/common/aqua/OSXAdapter.java:[104,12]
> >> cannot find symbol
> >> symbol  : class Actionable
> >> location: class org.crosswire.common.aqua.OSXAdapter
> >> 
> >> On Feb 21, 2010, at 1:57 PM, trent.jsword at trentonadams.ca wrote:
> >> 
> >>> Hi DM,
> >>> 
> >>> I didn't see you mention any errors, other than the encoding
> issue. 
> >> I'll try this on my wife's mac.    
> >>> 
> >>> For now, responses below...
> >>> 
> >>> ----- "DM Smith" <dmsmith at crosswire.org> wrote:
> >>> 
> >>>> From: "DM Smith" <dmsmith at crosswire.org>
> >>>> To: "J-Sword Developers Mailing List"
> <jsword-devel at crosswire.org>
> >>>> Sent: Sunday, February 21, 2010 12:23:23 PM GMT -06:00 US/Canada
> >> Central
> >>>> Subject: Re: [jsword-devel] maven vs ant
> >>>> 
> >>>> Trent,
> >>>> It did not work for me. I'm attaching the output. One of the
> >> things
> >>>> I'm curious about is why it downloaded stuff that BibleDesktop
> >> (and
> >>>> the libraries it uses) does not need. E.g. jetty, plexus, oro,
> >>>> velocity doxia-module-xml, ....
> >>>> 
> >>>> The POM is using the platform's default encoding. Should it? In
> my
> >>>> case it is MacRoman. None of the files are MacRoman. They are
> >> either 7
> >>>> bit ascii or UTF-8.
> >>> 
> >>> Yeah, we need to specify the proper encoding.  I tried with
> UTF-8,
> >> and apparently those java files are not UTF-8 in the tests folder
> of
> >> jsword I think it is.  I'll try again later.
> >>> 
> >>> The trunk/pom.xml that I recently sent should have the new
> encoding
> >> properties
> >>> 
> >>
> <project.build.sourceEncoding>iso-8859-1</project.build.sourceEncoding>
> >>> 
> >>> 
> >>
> <project.reporting.outputEncoding>iso-8859-1</project.reporting.outputEncoding>
> >>> 
> >>> I'll try ascii, and what not.
> >>> 
> >>>>> I still need to do at least the following...
> >>>>> - jar signing # never done it before
> >>>>> - run bibledesktop using a profile
> >>>>> - work something out for the jlfgr jar.  Perhaps those should
> >> just
> >>>> be in the bibledesktop resources?  Or should they be in their
> own
> >>>> module?  We could just create a sub module, with no source
> files,
> >> and
> >>>> only "src/main/resources", and package them in a jar
> >> automatically?
> >>>> 
> >>>> jlfgr is Sun's (now Oracle's) Java Look and Feel Graphics
> >> Repository.
> >>>> I'd be just as happy to replace the library outright. We only
> use
> >> it
> >>>> in the menus and toolbar for icons.
> >>> 
> >>> Okay, I'll check if that's available.
> >>> 
> >>>>> - the jsword project lead needs to prepare an account on a
> public
> >>>> maven repository, so we can push these things through maven. 
> >> Assuming
> >>>> of course that is what you guys want to do.  Or, if you really
> >> want,
> >>>> we can setup a maven.crosswire.org repository, and just put that
> >> in
> >>>> the base pom.
> >>>> 
> >>>> That would be me. But I need guidance... :)
> >>> 
> >>> It might be best to do a crosswire repo first, and then once we
> have
> >> our stuff together, perhaps look at going with maven's default
> >> repositories.  Any thoughts?
> >>> 
> >>> I've only done ssh based distribution management before.  The
> >> repository is configured to allow devs to upload using scp, and
> then
> >> regular users download from it via http.  But, there may be a way
> of
> >> allowing the HTTP PUT method, I'm not sure.  We'll have to
> >> investigate.
> >>> 
> >>>> 
> >>>>> 
> >>>>> I highly recommend the core developers move ALL resources to
> >>>> "src/main/resources" of each sub module.
> >>>> 
> >>>> What qualifies as a resource?
> >>>> I'm in the process of moving files containing string
> translations
> >> to
> >>>> there.
> >>> 
> >>> I would say that anything that is not source code, is a resource.
> 
> >> Obviously the resources folder needs sub folders so that you can
> keep
> >> the same structure once it gets copied to target/classes/  so, if
> the
> >> resource was org/crosswire/jsword/BookDriver.plugin then it would
> be
> >> in src/main/resources/org/crosswire/jsword/BookDriver.plugin
> >>> 
> >>>> Let me know of specific files that should be moved to
> >>>> src/test/resources.
> >>> 
> >>> Oh, well that would be anything in src/test/java/ that's not a
> java
> >> source file.
> >>> 
> >>> The following seems to work for resource copying, so probably all
> of
> >> those.  But again, I don't know which folders have which resources,
> so
> >> I just put all of these everywhere. :P
> >>> 
> >>>         <include>**/*.properties</include>
> >>>         <include>**/*.plugin</include>
> >>>         <include>**/*.png</include>
> >>>         <include>**/*.gif</include>
> >>>         <include>**/*.txt</include>
> >>>         <include>**/*.xml</include>
> >>>         <include>**/*.xsl</include>
> >>>> 
> >>>>> 
> >>>>> The following commands, from the command line, should work.  At
> >> some
> >>>> point, I'll try it in eclipse for you guys, and see if there's
> any
> >>>> maven related problems.  I don't use eclipse, so I don't know
> yet.
> >>>> 
> >>>> I used to do all of my development in vi and emacs. I like
> Eclipse
> >>>> because it has safe refactoring.
> >>> 
> >>> Yeah, I was using vi for quite awhile.  I use IDEA now, because
> it
> >> seems to be the best IDE out there.  They do offer free versions
> for
> >> open source projects, if you wanted to try it.  But, eclipse is
> more
> >> widely used in open source projects, which drives me nuts, cause I
> >> think it's the worst one out there (between NetBeans, eclipse, and
> >> IDEA). :P  eclipse features are fine, it's just IMO, it's about as
> >> convoluted as you can get, for an IDE.  Seems like you have to
> jump
> >> through hoop after hoop to get anything done.
> >>> 
> >>> 
> >>> 
> >>> 
> >>> _______________________________________________
> >>> jsword-devel mailing list
> >>> jsword-devel at crosswire.org
> >>> http://www.crosswire.org/mailman/listinfo/jsword-devel
> >> 
> >> 
> >> _______________________________________________
> >> jsword-devel mailing list
> >> jsword-devel at crosswire.org
> >> http://www.crosswire.org/mailman/listinfo/jsword-devel
> > 
> > _______________________________________________
> > jsword-devel mailing list
> > jsword-devel at crosswire.org
> > http://www.crosswire.org/mailman/listinfo/jsword-devel
> 
> 
> _______________________________________________
> jsword-devel mailing list
> jsword-devel at crosswire.org
> http://www.crosswire.org/mailman/listinfo/jsword-devel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: poms.tar.gz
Type: application/x-gzip
Size: 2695 bytes
Desc: not available
URL: <http://www.crosswire.org/pipermail/jsword-devel/attachments/20100221/b3c2f688/attachment.gz>


More information about the jsword-devel mailing list