querydsl / apt-maven-plugin

Maven APT plugin
Apache License 2.0
79 stars 41 forks source link

"symbol not found" if Q-class user is not in same package #2

Closed mleduque closed 12 years ago

mleduque commented 12 years ago

I have an entity class MyEntity and an class EntityUser that makes use of the QMyEntity generated class.

With maven-apt-plugin version 1.0.2 (in fact, any version >= 1.0),

[INFO] Scanning for projects... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building test-project 1.0-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- maven-apt-plugin:1.0.2:process (default) @ test-project --- D:\eclipse\workspace\test-project\src\main\java\apt\plugin\test\EntityUser.java:7: cannot find symbol symbol : class QMyEntity location: package apt.plugin.test.entities import apt.plugin.test.entities.QMyEntity; ^

Now, if I use the 0.3.2 version of the plugin, install works whether the classes are in the same package or not.

timowest commented 12 years ago

Does it really fail or only log a bit more?

mleduque commented 12 years ago

2012/2/5 Timo Westkämper < reply@reply.github.com

Does it really fail or only log a bit more?


Reply to this email directly or view it on GitHub: https://github.com/mysema/maven-apt-plugin/issues/2#issuecomment-3820361

I'll have to test to answer that. I'll do it on thursday.

mleduque commented 12 years ago

OK, I checked again. The message is printed, but the build is successful. I also checked the generated artifact, it seems correct.

Should I close the issue ? Anyway, the message is maybe a bit not clear enough (actually, I don't know what info it's supposed to give the user).

timowest commented 12 years ago

You can close the issue, this is logging related.

mleduque commented 12 years ago

OK, thanks. I can now use a newer version.

euchari commented 12 years ago

From https://groups.google.com/forum/#!topic/querydsl/7kuXuUOjff0/discussion%5B1-25%5D

"Hi.

I just fixed the issue : https://github.com/mysema/querydsl/issues/71

Concerning the Maven plugin issues. There have been some changes concerning the logging level.

In the latest Maven APT plugin you have the following options to control logging :

showWarnings = false; // add nowarn option to javac

logOnlyOnError = false; // logs only when APT processing failed

The default settings are a bit more secure than with older APT plugin versions.

Br, Timo"

We've been able to translate this into this maven plugin config:

            <plugin>
                <groupId>com.mysema.maven</groupId>
                <artifactId>maven-apt-plugin</artifactId>
                <version>1.0.3</version>
                <executions>
                    <execution>
                        <phase>generate-sources</phase>
                        <goals>
                            <goal>process</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>target/generated-sources/java</outputDirectory>
                            <processor>com.mysema.query.apt.jpa.JPAAnnotationProcessor</processor>
                            <logOnlyOnError>true</logOnlyOnError>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

which seems to get rid of the issue