stardog-union / pellet

Pellet is an OWL 2 reasoner in Java; open source (AGPL) and commercially licensed, commercial support available.
http://clarkparsia.com/pellet
Other
302 stars 153 forks source link

Non-resolvable parent POM: Could not find artifact #44

Open Hanan2 opened 6 years ago

Hanan2 commented 6 years ago

Hello there

i downloaded Pellet zip folder and I tried to run the maven project but I could not choose "main class". Also, when I run the project, I got the following run error.

The build could not read 1 project -> [Help 1]

The project com.clarkparsia.pellet:pellet-owlapi:2.4.0-SNAPSHOT (/Users/han/NetBeansProjects/pellet-master/owlapi/pom.xml) has 1 error Non-resolvable parent POM: Could not find artifact com.clarkparsia.pellet:pellet-parent:pom:2.4.0-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 4, column 10 -> [Help 2]

To see the full stack trace of the errors, re-run Maven with the -e switch. Re-run Maven using the -X switch to enable full debug logging.

For more information about the errors and possible solutions, please read the following articles: [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException [Help 2] http://cwiki.apache.org/confluence/display/MAVEN/UnresolvableModelException

How can I solve this problem in order to run the project properly?

ignazio1977 commented 6 years ago

I don't get the same failure. I had an error saying a certain OWLAPI version was not available.

In the root pom, locate this line:

    <owlapi.version>[4.0.2,4.2)</owlapi.version>

This is a range version number, and is not resolved properly. Set it to a specified version, such as 4.2.8 (that's the OWLAPI version used in many Protege versions). That worked for me, compiling from the command line with

mvn clean test
Hanan2 commented 6 years ago

when you download Pellet master folder, which maven project did you run? because the folder has several maven projects. also, when I select for example "owlapi" maven project to open and run in netbeans, I got "unloadable" text next to "owlapi" in projects list. There is any problem with opening the project? or are there any specific way to open and run the project.?

ignazio1977 commented 6 years ago

when you download Pellet master folder, which maven project did you run?

There is a pom.xml file in the root. That's the root project, the rest are its modules. You cannot build one module outside the context of the root project.

Hanan2 commented 6 years ago

Sorry for this question but I am new to maven projects and this projects have several sub maven projects. I searched in Pellet-master folder about "pom.xml" file and I found 14 pom.xml files. I am confused, Could you please tell me thankfully in which directory/folder the root pom.xml is available?

ignazio1977 commented 6 years ago

The root (or parent) pom.xml file is in the pellet-master folder - same folder as the owlapi folder.

Hanan2 commented 6 years ago

when I run root POM, I got this error. How can I fix it.

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project pellet-core: Compilation failure [ERROR] /Users/ha/git/pellet2/core/src/main/java/org/mindswap/pellet/utils/MultiValueMap.java:[70,20] name clash: remove(K,V) in org.mindswap.pellet.utils.MultiValueMap and remove(java.lang.Object,java.lang.Object) in java.util.HashMap have the same erasure, yet neither overrides the other [ERROR] -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException [ERROR] [ERROR] After correcting the problems, you can resume the build with the command [ERROR] mvn -rf :pellet-core

ignazio1977 commented 6 years ago

That compile issue existed in an ancient Pellet version. The current master has:

 public boolean remove(Object key, Object value) {
    boolean removed = false;

    Set<V> values = get( key );

This will compile successfully.

Hanan2 commented 6 years ago

thanks for your suggestion. The project has been built successfully in Eclipse.

I have a question plz, I would like to run one file at a time from example module. how could I run/compile a specific java file in the project.?