On 12/08/15 09:12, Dennis Bliefernicht wrote:
HI,
- download woproject.jar only once instead of once per framework
- remove reference tonexus.xyrality.net <http://nexus.xyrality.net/>
- remove postgres dependencies
- allow setting webobjectsVersion / wonderVersion before applying the
plugin since automatically added frameworks will use the default
versions otherwise
Feel absolutely free to submit pull requests, preferable separate ones
for this :-) Generally we're not that happy either yet with the
default dependency mechanism; while "fine" for most projects sometimes
you want to switch out some dependency which is not that easy to do
afterwards in Gradle.
Will do :)
Our only trouble with dependencies has been with WOUnit that get
outdated dependencies so our fork contains
testCompile(group: 'com.wounit', name: 'wounit', version: '1.2.1') {
transitive = false
}
and we manually add the required dependencies afterward.
[2015-8-10 16:14:34 CEST] <main> Couldn't load properties file:
/Users/ycanal/WebObjects.properties at path: /Users/ycanal
[2015-8-10 16:14:34 CEST] <main> Unable to initialize WOProperties
for reason: Cannot find JavaWebObjects framework !
java.lang.IllegalStateException: Unable to locate the
"JavaWebObjects" bundle
[2015-8-10 16:14:34 CEST] <main> A fatal exception occurred:
<WOApplication>: Cannot be initialized.
[2015-8-10 16:14:34 CEST] <main>
com.webobjects.foundation.NSForwardException
[java.lang.IllegalStateException] Unable to locate the
"JavaWebObjects" bundle:<WOApplication>: Cannot be initialized.
at
com.webobjects.appserver.WOApplication.<init>(WOApplication.java:918)
at
er.extensions.appserver.ajax.ERXAjaxApplication.<init>(ERXAjaxApplication.java:30)
at
er.extensions.appserver.ERXApplication.<init>(ERXApplication.java:1097)
at
fr.sophiacom.corason.foundation.appserver.COCoreApplication.<init>(COCoreApplication.java:22)
at fr.sophiacom.app.NRApplication.<init>(NRApplication.java:19)
at fr.sophiacom.app.Application.<init>(Application.java:30)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at java.lang.Class.newInstance(Class.java:442)
at
com.webobjects.appserver.WOApplication.main(WOApplication.java:547)
at
er.extensions.appserver.ERXApplication.main(ERXApplication.java:866)
at fr.sophiacom.app.Application.main(Application.java:25)
Caused by: java.lang.IllegalStateException: Unable to locate the
"JavaWebObjects" bundle
at
com.webobjects.appserver.WOResourceManager.__getJavaWebObjectsResourceAsStream(WOResourceManager.java:131)
at
com.webobjects.appserver._private.WOProperties.initUserDefaultsKeys(WOProperties.java:317)
at
com.webobjects.appserver.WOApplication._initWOApp(WOApplication.java:5743)
at
com.webobjects.appserver.WOApplication.<init>(WOApplication.java:779)
... 13 more
Do you have any idea how to fix that ?
Right now we are still keeping our old .project / build.xml
/.classpath but we would like to avoid maintaining 2 configurations.
How did you import the project exactly? Did you keep the old
.project and .classpath around for that or did you do a fresh import
using the gradle plugin? There could be some issue with the
classpath, if the old files are around, best would be to have gradle
generate new ones. Have a look at the project properties -> Build
path, there should be no more references to WO libraries but only to
JARs in yourhomefolder/.gradle/ (see attachment), even for all the
frameworks.
We tried to use gradle + eclipse in a new workspace after a "gradle
cleanEclipse eclipse" so the generated .classpath only reference .jar
as in your screenshot.
It may be a missing (runtime)dependency but the exception is not
really helpful :(
Does that scenario give you the exact same stack trace? Which Eclipse
version and Gradle plugin did you use? I investigated the new
Buildship plugin but that one still has some issues that prevent this
in a WO context, mainly it doesn't allow the gradle.build to add
custom project natures. As the WOLips plugin for now is unaware of
Buildship, the WO build nature never gets added to the project and
thus some specific WO builders do not run at all. Check your generated
.project if it includes the build command
for org.objectstyle.wolips.incrementalbuilder and a project nature
of org.objectstyle.wolips.incrementalapplicationnature
or org.objectstyle.wolips.incrementalframeworknature. If this is
missing, this can also result in some WOLips exceptions, if you try to
access the WOLips part of the project properties.
That's the scenario we tried. We use eclipse 4.5 (I think Antoine tried
on 4.4), gradle 2.4 and our fork of the gradle-plugin.
The projects were imported using the "import existing project" menu, not
the gradle import.
.project file contains org.objectstyle.wolips.incrementalbuilder and
org.objectstyle.wolips.incrementalframeworknature :(
Linking to the JavaWebObjects library instead of the .jar gives another
exception but I'm not sure this can help:
[...]
[2015-8-13 14:59:24 CEST] <main> NSBundle is unable to find
"ExtensionsForResources.plist" in the main bundle. Ignoring optional
configuration file.
[2015-8-13 14:59:24 CEST] <main> Cannot use rapid turnaround. Please
start Xcode and open the project for this application.
[2015-8-13 14:59:24 CEST] <main> <WOProjectBundle>: Warning - Unable to
find project at path /Users/ycanal/ - Ignoring project.
[2015-8-13 14:59:24 CEST] <main>
java.lang.StringIndexOutOfBoundsException: String index out of range: 18
at java.lang.String.substring(String.java:1951)
at
com.webobjects._ideservices._WOAntProject.antProjectAtPath(_WOAntProject.java:62)
at
com.webobjects._ideservices._WOProject.ideProjectAtPath(_WOProject.java:106)
at
com.webobjects.appserver._private.WOProjectBundle._isProjectBundlePath(WOProjectBundle.java:225)
at
com.webobjects.appserver._private.WODeployedBundle.bundleWithNSBundle(WODeployedBundle.java:745)
at
com.webobjects.appserver.WOResourceManager._bundleWithNSBundle(WOResourceManager.java:186)
at
com.webobjects.appserver.WOResourceManager._locateBundleForFrameworkNamed(WOResourceManager.java:208)
at
com.webobjects.appserver.WOResourceManager._cachedBundleForFrameworkNamed(WOResourceManager.java:233)
at
com.webobjects.appserver.WOResourceManager._initFrameworkProjectBundles(WOResourceManager.java:254)
at
com.webobjects.appserver.WOResourceManager.<init>(WOResourceManager.java:69)
at
er.extensions.appserver.ERXResourceManager.<init>(ERXResourceManager.java:48)
at
er.extensions.appserver.ERXApplication.createResourceManager(ERXApplication.java:1090)
at
com.webobjects.appserver.WOApplication.resourceManager(WOApplication.java:1663)
at
er.extensions.foundation.ERXFileUtilities.inputStreamForResourceNamed(ERXFileUtilities.java:627)
at
er.extensions.foundation.ERXFileUtilities.readPropertyListFromFileInFramework(ERXFileUtilities.java:820)
at
er.extensions.appserver.ERXResourceManager._additionalMimeTypes(ERXResourceManager.java:405)
at
er.extensions.appserver.ERXResourceManager.<clinit>(ERXResourceManager.java:46)
at
er.extensions.appserver.ERXApplication.createResourceManager(ERXApplication.java:1090)
at
com.webobjects.appserver.WOApplication.<init>(WOApplication.java:841)
at
er.extensions.appserver.ajax.ERXAjaxApplication.<init>(ERXAjaxApplication.java:30)
at
er.extensions.appserver.ERXApplication.<init>(ERXApplication.java:1097)
at fr.sophiacom.app.Application.<init>(Application.java:30)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at java.lang.Class.newInstance(Class.java:442)
at com.webobjects.appserver.WOApplication.main(WOApplication.java:547)
at er.extensions.appserver.ERXApplication.main(ERXApplication.java:866)
at fr.sophiacom.app.Application.main(Application.java:25)
[2015-8-13 14:59:24 CEST] <main> Creating LifebeatThread now with:
YNP_NOBackOfficeApp -1 localhost/127.0.0.1 1085 30000
[2015-8-13 14:59:24 CEST] <main> A fatal exception occurred:
ERXExtensions have not been initialized. Debugging information can be
enabled by adding the JVM argument:
'-Der.extensions.appserver.projectBundleLoading=DEBUG'. Please report
the classpath and the rest of the bundles to the Wonder mailing list:
Remaining frameworks: [JavaFoundation, ERModernLook,
ERCoreBusinessLogic, ERTaggable, JavaJDBCAdaptor, ERRest, JavaXML,
WOLips, ERCoolComponents, ERPrototypes, ExcelGenerator,
JavaWOExtensions, JavaDTWGeneration, ERAttachment, JavaEOControl, Ajax,
MySQLPlugIn, JavaEOAccess, GoogleChart, JavaDirectToWeb,
ERCoreBusinessLogicDTW, ERJavaMail, ERExcelLook, JavaEOProject,
JavaMemoryAdaptor, ERModernDefaultSkin, ERDirectToWeb,
ERQuartzScheduler, ERExtensions, WOOgnl, ERModernDirectToWeb]
Classpath: [...]
[2015-8-13 14:59:24 CEST] <main> java.lang.RuntimeException:
ERXExtensions have not been initialized. Debugging information can be
enabled by adding the JVM argument:
'-Der.extensions.appserver.projectBundleLoading=DEBUG'. Please report
the classpath and the rest of the bundles to the Wonder mailing list:
Remaining frameworks: [JavaFoundation, ERModernLook,
ERCoreBusinessLogic, ERTaggable, JavaJDBCAdaptor, ERRest, JavaXML,
WOLips, ERCoolComponents, ERPrototypes, ExcelGenerator,
JavaWOExtensions, JavaDTWGeneration, ERAttachment, JavaEOControl, Ajax,
MySQLPlugIn, JavaEOAccess, GoogleChart, JavaDirectToWeb,
ERCoreBusinessLogicDTW, ERJavaMail, ERExcelLook, JavaEOProject,
JavaMemoryAdaptor, ERModernDefaultSkin, ERDirectToWeb,
ERQuartzScheduler, ERExtensions, WOOgnl, ERModernDirectToWeb]
Classpath: [...]
at
er.extensions.appserver.ERXApplication.<init>(ERXApplication.java:1143)
at
fr.sophiacom.corason.foundation.appserver.COCoreApplication.<init>(COCoreApplication.java:22)
at fr.sophiacom.app.NRApplication.<init>(NRApplication.java:19)
at fr.sophiacom.app.Application.<init>(Application.java:30)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at java.lang.Class.newInstance(Class.java:442)
at com.webobjects.appserver.WOApplication.main(WOApplication.java:547)
at er.extensions.appserver.ERXApplication.main(ERXApplication.java:866)
at fr.sophiacom.app.Application.main(Application.java:25)
Greetings
Dennis
--
-----------------------------------------------------
*Dennis Bliefernicht* • Backend Development
*T* +49 40 357 3001 62
dennis.blieferni...@xyrality.com <mailto:dennis.blieferni...@xyrality.com>
_
_
XYRALITY GmbH•Friedensallee 290 • 22763 Hamburg
www.xyrality.com <http://www.xyrality.com>
Registergericht: Hamburg HRB 115332
Geschäftsführer: Sven Ossenbrüggen
-----------------------------------------------------
Yoann
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com
This email sent to arch...@mail-archive.com