Cannot resolve symbol '***' in POM.xml

はじめに

POM.xmlのErrorの解決方法のmemo

├── pom.xml
├── src
│   ├── main
│   │   ├── filters
│   │   │   └── dev.properties

POM.xml

<project ...><profiles>
        <profile>
            <id>dev</id>
            <properties>
                <foo>src/main/filters/dev.properties</foo>
            </properties>
        </profile>
    </profiles>

    <build>
        <filters>
            <filter>${foo}</filter>
        </filters>
    </build>

</project>

この場合<filter>${foo}</filter>の箇所がerrorとなる

Cannot resolve symbol 'foo' 

ただ、buildは可能だし、指定したprofileでfilterしてくれる。

原因

defaultを指定してあげないとIDEが解決できない様子

            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>

POM.xml (修正後)

<project ...><profiles>
        <profile>
            <id>dev</id>
            <properties>
                <foo>src/main/filters/dev.properties</foo>
            </properties>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
    </profiles>

    <build>
        <filters>
            <filter>${foo}</filter>
        </filters>
    </build>

</project>