Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't build JAMI? #4

Closed
tschaka1904 opened this issue Feb 26, 2016 · 41 comments
Closed

Can't build JAMI? #4

tschaka1904 opened this issue Feb 26, 2016 · 41 comments
Assignees
Labels
Milestone

Comments

@tschaka1904
Copy link
Member

From @colin-combe on February 1, 2016 15:9

When I try to build JAMI ("mvn -U clean package" from psi-jami directory) it fails.
Failure occurs in the uniprot module.
Failed tests have following in common:

Could not access HTTP invoker remote service at [http://www.ebi.ac.uk/uniprot/remotingAPI/remotingAPI/uniprotPagingService];

Anyone know what this is about?

Copied from original issue: MICommunity/psimi#12

@tschaka1904
Copy link
Member Author

Which part package of JAMI are you using? JAMI is still using the 'old' UniProt JAPI, which has been retired from last month on. We need to migrate it to the new one.

@tschaka1904
Copy link
Member Author

From @colin-combe on February 2, 2016 8:49

On 01/02/16 16:21, Maximilian Koch wrote:

Which part package of JAMI are you using?

I was checking if I could build it all by running maven from the
psi-jami directory.

JAMI is still using the 'old' UniProt JAPI, which has been retired
from last month on. We need to migrate it to the new one.

I don't know how essential this uniprot module (uniprot bridges?) is in
JAMI, we could comment out building that module if the other things will
still work?

C

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

@tschaka1904
Copy link
Member Author

I have been updating all the pom.xml's in master. They were pointing to unitprot-kraken from 2015.02, which isn't available anymore. I have changed the version to RELEASE, which is pointing to the latest release of it. Anyway, we need to change this on some point to the new JAPI: http://www.ebi.ac.uk/uniprot/japi/index.html

But you should be able to use JAMI now. ;-) But you won't be able to receive any new proteins from now on.

@tschaka1904
Copy link
Member Author

From @colin-combe on February 2, 2016 16:24

Thanks Max - now I have the strange error shown below, it says UnknownHostException for "www.ebi.ac.uk" - any ideas whats wrong?
C


Test set: psidev.psi.mi.jami.bridges.uniprot.UniprotGeneFetcherTest

Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 33.096 sec <<< FAILURE!
test(psidev.psi.mi.jami.bridges.uniprot.UniprotGeneFetcherTest) Time elapsed: 33.094 sec <<< ERROR!
org.springframework.remoting.RemoteAccessException: Could not access HTTP invoker remote service at [http://www.ebi.ac.uk/uniprot/remotingAPI/remotingAPI/uniprotPagingService]; nested exception is java.net.UnknownHostException: www.ebi.ac.uk: Name or service not known
at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.convertHttpInvokerAccessException(HttpInvokerClientInterceptor.java:216)

@tschaka1904
Copy link
Member Author

From @colin-combe on February 2, 2016 16:24

Ug, sorry about the formatting...

@tschaka1904
Copy link
Member Author

Mhm.. that is odd. I can run the test without any problem. Can you please check that you don't have a the dependency: uk.ac.ebi.uniprot.kraken:uniprotjapi:2015.02 anymore. You must only have uk.ac.ebi.uniprot.kraken:uniprotjapi:2015.12

@tschaka1904
Copy link
Member Author

From @colin-combe on February 3, 2016 11:31

Thanks for your continued help with this Max; I've made a ticket for the using-new-JAPI issue mentioned above (issue #14).

Re. building JAMI - I am using "mvn -U clean install" which I thought would clear out old dependencies. (Incidentally, the two dependencies you mention above are the same - I guess you mean it should be uk.ac.ebi.uniprot.kraken:uniprotjapi:RELEASE .)

However, on a different computer today... and I have a different error (compilation error rather than test failure):-

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project jami-europubmedcentral: Compilation failure
[ERROR] /home/colin/test/psimi/psi-jami/jami-bridges/jami-europubmedcentral/src/main/java/psidev/psi/mi/jami/bridges/europubmedcentral/EuroPubmedCentralFetcher.java:[89,47] error: method searchPublications in interface WSCitationImpl cannot be applied to given types;

My java and mvn version info is:

Apache Maven 3.0.4
Maven home: /usr/share/maven
Java version: 1.7.0_75, vendor: Oracle Corporation
Java home: /home/username/jdk1.7.0_75/jre
Default locale: en_GB, platform encoding: UTF-8
OS name: "linux", version: "3.2.0-4-686-pae", arch: "i386", family: "unix"

Any help much appreciated,
cheers,
c

@tschaka1904
Copy link
Member Author

Hi Colin! I think, I had the same problem a few days ago, with one of the IntAct libs. You need to import this library: http://europepmc.org/JaxWs

Hope this helps. Max

@tschaka1904
Copy link
Member Author

From @colin-combe on February 4, 2016 12:11

Thanks Max,

You need to import this library: http://europepmc.org/JaxWs

From the instructions I'm not quite sure how to install it...
Would it be possible for the maven project to deal with this dependency? That would make it easier for people, otherwise we should say somewhere that this dependency needs to be installed manually.

best,
C

@tschaka1904
Copy link
Member Author

In the new JAMI version the should all happen by it self and it is configured in the belonging pom.xml

@tschaka1904
Copy link
Member Author

@colin-combe can this issue be closed?

@colin-combe
Copy link
Contributor

I will check if I can build it this week,
thanks Max,
c

On 21/06/16 15:46, Maximilian Koch wrote:

@colin-combe https://github.com/colin-combe can this issue be closed?


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#4 (comment),
or mute the thread
https://github.com/notifications/unsubscribe/AA7qx-e1mYj0Vuic9fmKr4fJD2MF-xa2ks5qN_lXgaJpZM4HjvM2.

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

@colin-combe
Copy link
Contributor

colin-combe commented Jun 22, 2016

No, I can't build it, it could be something simple.

I try to build by running $ mvn -U clean package from the top level dir.

My version info is:

$ mvn -version
Apache Maven 3.0.4
Maven home: /usr/share/maven
Java version: 1.7.0_79, vendor: Oracle Corporation
Java home: /home/colin/jdk1.7.0_79/jre
Default locale: en_GB, platform encoding: UTF-8
OS name: "linux", version: "3.2.0-4-686-pae", arch: "i386", family: "unix"

The reports for the failing tests are attached, they all say:
java.lang.UnsupportedClassVersionError: uk/ac/ebi/uniprot/dataservice/client/exception/ServiceException : Unsupported major.minor version 52.0

psidev.psi.mi.jami.bridges.uniprot.CachedUniprotFetcherTest.txt
psidev.psi.mi.jami.bridges.uniprot.UniprotGeneFetcherTest.txt
psidev.psi.mi.jami.bridges.uniprot.UniprotProteinFetcherTest.txt

@tschaka1904
Copy link
Member Author

Are you able to run it with java 8? UniProt forces us to use java 8.

@colin-combe
Copy link
Contributor

No, it fails (worse) when I use Java 8. I think it is failing while attempting to build the javadoc. Is there a way to disable this?

The complete output from maven is attached beneath my current version info:

$ mvn -version
Apache Maven 3.0.4
Maven home: /usr/share/maven
Java version: 1.8.0_91, vendor: Oracle Corporation
Java home: /home/colin/jdk1.8.0_91/jre
Default locale: en_GB, platform encoding: UTF-8
OS name: "linux", version: "3.2.0-4-686-pae", arch: "i386", family: "unix"

jami_java8.txt

@tschaka1904
Copy link
Member Author

Okay. We're aware of the issue #13. Please append -Dmaven.javadoc.skip=true to your mvn command.

@colin-combe
Copy link
Contributor

Thanks Max, I thought there'd be an easy way to disable javadoc building.

Now I have the following error:

[ERROR] Failed to execute goal on project jami-imexcentral: Could not resolve dependencies for project psidev.psi.mi.jami.bridges:jami-imexcentral:jar:3.0.0: Could not find artifact edu.ucla.mbi.imex:icentral-api:jar:2.0 in nexus-ebi-repo-old (http://www.ebi.ac.uk/intact/maven/nexus/content/repositories/ebi-repo/) -> [Help 1]

@tschaka1904
Copy link
Member Author

I see! This an issue with new nexus. Unfortunately the IMEx artifact repository hasn't been copied properly. I'll let you know once it is fixed. The error doesn't appear for me, because I've that dependency already in my local machine.

@tschaka1904
Copy link
Member Author

Hi Colin. We have made a temporary solution, until we have sorted out the dependency. Your latest JAMI issue is solved in the develop branch.

Please let me know if you experience any other issue.

@colin-combe
Copy link
Contributor

OK - using develop branch, it fails with following error:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.0:compile (default-compile) on project jami-europubmedcentral: Compilation failure
[ERROR] /home/colin/JAMI/psi-jami/jami-bridges/jami-europubmedcentral/src/main/java/psidev/psi/mi/jami/bridges/europubmedcentral/EuroPubmedCentralFetcher.java:[135,34] cannot find symbol
[ERROR] symbol:   method getDoi()
[ERROR] location: variable result of type uk.ac.ebi.cdb.webservice.Result

I looked for more detailed info about what went wrong (i.e. stack trace ) but couldn't find it. Ask if you need more info and I'll look again.

@colin-combe colin-combe added this to the JAMI workshop milestone Jul 29, 2016
@colin-combe
Copy link
Contributor

Added JAMI work shop milestone. I had hoped to be able to build/test JAMI before workshop.

@tschaka1904
Copy link
Member Author

Sorry for all the inconvenience.. :( But it europubmedcentral has updated their api. They renamed a method from getDoi() to getDOI(). Anyway. I've fixed it and it 'should' work now.

@colin-combe
Copy link
Contributor

Sorry for all the inconvenience..

No problem - sorry for hassling you. I'll try again and report back.

@colin-combe
Copy link
Contributor

bad news Max... its still broken :(
Failing to build jami-imexcentral, error message below. Thanks for your help - I know this is a hassle.

[ERROR] Failed to execute goal on project jami-imexcentral: Could not resolve dependencies for project psidev.psi.mi.jami.bridges:jami-imexcentral:jar:3.0.2-SNAPSHOT: Failed to collect dependencies for [psidev.psi.mi.jami.bridges:bridges-core:jar:3.0.2-SNAPSHOT (compile), edu.ucla.mbi.imex:icentral-api:jar:2.0 (compile), xalan:xalan:jar:2.7.2 (compile), psidev.psi.mi.jami:jami-core:jar:3.0.2-SNAPSHOT (compile), org.slf4j:slf4j-api:jar:1.6.1 (compile), org.slf4j:slf4j-log4j12:jar:1.6.1 (compile), junit:junit:jar:4.10 (test?)]: Failed to read artifact descriptor for edu.ucla.mbi.imex:icentral-api:jar:2.0: Could not find artifact edu.ucla.mbi.imex:imexcentral-project:pom:1.0-SNAPSHOT in imex-repo (http://www.ebi.ac.uk/intact/maven/nexus/content/repositories/imex-public) -> [Help 1]

@tschaka1904
Copy link
Member Author

Alright! I can't fix this, because I can't find the dependency. I've removed the imex libs from the JAMI build, for now. This way you should be able to compile it.

@colin-combe
Copy link
Contributor

Success! Thanks Max.

@colin-combe
Copy link
Contributor

colin-combe commented Aug 4, 2016

on a different machine, I can't build again...
Problem is with the jami-xml module. I have maven 3 and tried both the 8.102 and 8.101 java versions.

Tests in error:
test_validate_datasource_reinit(psidev.psi.mi.jami.xml.model.extension.datasource.XmlModelledBinarySourceTest): cannot reload experiment 4120
test_validate_datasource_reinit_2(psidev.psi.mi.jami.xml.model.extension.datasource.XmlModelledBinarySourceTest): cannot reload experiment 4120
parse_valid_file(psidev.psi.mi.jami.xml.model.extension.datasource.XmlModelledSourceTest): cannot reload experiment 4120
test_validate_datasource_reinit_2(psidev.psi.mi.jami.xml.model.extension.datasource.XmlComplexSourceTest): cannot reload experiment 4120

SEVERE: cannot reload experiment 4120
javax.xml.bind.UnmarshalException
 - with linked exception:
[com.sun.istack.SAXParseException2; lineNumber: 1; columnNumber: 1; unexpected element (uri:"net:sf:psidev:mi", local:"experimentDescription"). Expected elements are <{net:sf:psidev:mi}entrySet>]
        at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamException(UnmarshallerImpl.java:483)
        at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:417)
        at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:386)
        at psidev.psi.mi.jami.xml.cache.PsiXmlFileIndexCache.loadFromFile(PsiXmlFileIndexCache.java:734)
        at psidev.psi.mi.jami.xml.cache.PsiXmlFileIndexCache.getExperiment(PsiXmlFileIndexCache.java:165)
        at psidev.psi.mi.jami.xml.model.extension.AbstractXmlModelledInteraction$JAXBExperimentWrapper$JAXBExperimentRefList$ExperimentRef.resolve(AbstractXmlModelledInteraction.java:468)
        at psidev.psi.mi.jami.xml.XmlEntryContext.resolveInteractorAndExperimentRefs(XmlEntryContext.java:207)
        at psidev.psi.mi.jami.xml.model.AbstractEntrySet$EntryList.processAddedObjectEvent(AbstractEntrySet.java:76)
        at psidev.psi.mi.jami.xml.model.AbstractEntrySet$EntryList.processAddedObjectEvent(AbstractEntrySet.java:70)
        at psidev.psi.mi.jami.utils.collection.AbstractListHavingProperties.add(AbstractListHavingProperties.java:24)
        at com.sun.xml.bind.v2.runtime.reflect.Lister$CollectionLister.addToPack(Lister.java:305)
        at com.sun.xml.bind.v2.runtime.reflect.Lister$CollectionLister.addToPack(Lister.java:269)
        at com.sun.xml.bind.v2.runtime.unmarshaller.Scope.add(Scope.java:121)
        at com.sun.xml.bind.v2.runtime.property.ArrayERProperty$ReceiverImpl.receive(ArrayERProperty.java:213)
        at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext.endElement(UnmarshallingContext.java:538)
        at com.sun.xml.bind.v2.runtime.unmarshaller.SAXConnector.endElement(SAXConnector.java:158)


@colin-combe colin-combe reopened this Aug 4, 2016
@tschaka1904
Copy link
Member Author

I'm aware of that error. Appears when you run the install/test in a certain way. Fun fact: If you test just that method, everything works fine.

How did you run JAMI?

@colin-combe
Copy link
Contributor

colin-combe commented Aug 4, 2016

I just ran:

mvn -U -Dmaven.javadoc.skip=true clean package

and it didn't work... :(

@colin-combe
Copy link
Contributor

Got the error below - probably related to #4 (comment).
Did europubmedcentral change their API back to getDoi() instaed of getDOI()?

[ERROR] /home/colin/psi-jami/jami-bridges/jami-europubmedcentral/src/main/java/psidev/psi/mi/jami/bridges/europubmedcentral/EuroPubmedCentralFetcher.java:[135,34] cannot find symbol
[ERROR] symbol:   method getDOI()
[ERROR] location: variable result of type uk.ac.ebi.cdb.webservice.Result

@tschaka1904
Copy link
Member Author

Are you still working on the develop branch?

@colin-combe
Copy link
Contributor

Yes

@tschaka1904
Copy link
Member Author

Can you make a mvn clean -U test on the module? Maybe the old epmc wsdl is still floating around.

@tschaka1904
Copy link
Member Author

Previously we had a .wsdl-file stored in JAMI. Now it get's fetched, if it is not in the target folder.

@colin-combe
Copy link
Contributor

Can you make a mvn clean -U test on the module?

OK, did this. It's the same.

@colin-combe
Copy link
Contributor

@tschaka1904 Can I check - is it working for you?
sorry for causing you trouble again...

@tschaka1904
Copy link
Member Author

No problem!

Mhm.. works for me. I've deleted my target folder to be sure that it's build form scratch.

@colin-combe
Copy link
Contributor

colin-combe commented Aug 12, 2016

OK... this is as far as I can get with this:-

  • deleting the target folder doesn't help, and mvn clean is doing this anyway.
  • if I change line 135 of EuroPubmedCentralFetcher.java to result.getDoi() then it works
  • if I look in /psi-jami/jami-bridges/jami-europubmedcentral/target/generated-sources/uk/ac/ebi/cdb/webservice/Result.java after trying to build then, yes, the method is indeed called getDoi()

I must be getting a different wsdl file (used as basis to generate sources, right) from the one you're getting? I'm not sure how/where it gets this file.

or we have different versions of the tool that generates the sources, perhaps?

@yochannah
Copy link
Contributor

I'm having trouble building JAMI too. There was a dependency issue with the CHEBI artifact that I managed to work around (see yochannah@5372288), but then another issue cropped up.

You can see the failure details here if you like: https://travis-ci.org/yochannah/psi-jami/builds/188572303

@colin-combe
Copy link
Contributor

Some comments about this issue:

  • my issue with getDoi() vrs getDOI() in the jami-europubmedcentral module seems to have resolved itself.

  • I don't think one giant issue called "Cant build JAMI" is so helpful... I started it so apologies for that. I think we should close this and have separate issues for separate build problems.

  • I made issues for (unisave module fails test #43, picr module fails test #44) for other tests failing. Is this the right thing to do? Should travis be used for this in some way instead?

Let me know your thoughts,
cheers,
c

@colin-combe
Copy link
Contributor

it builds for me at moment, but I have to skip tests

gonna close

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants