[jira] [Comment Edited] (ARROW-15959) [Java][Docs] Fix IntelliJ IDE setup instructions

2022-04-26 Thread David Li (Jira)


[ 
https://issues.apache.org/jira/browse/ARROW-15959?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17528365#comment-17528365
 ] 

David Li edited comment on ARROW-15959 at 4/26/22 8:46 PM:
---

Tracing my steps: I started with a fresh IntelliJ 2022.1 installation. I 
installed IdeaVim and CheckStyle-IDEA for reference.

I then opened the {{java}} subdirectory of a fresh Arrow checkout, and waited 
for the Maven sync. That ran into 

{noformat}
Could not find artifact 
io.netty:netty-transport-native-unix-common:jar:${os.detected.name}-${os.detected.arch}:4.1.72.Final
 in central (https://repo.maven.apache.org/maven2)
{noformat}

This seems to be related to 
https://github.com/trustin/os-maven-plugin/issues/19. I updated the plugin and 
re-opened the IDE, which seemed to fix it mostly, except in 
flight-integration-tests which had

{noformat}
Unresolved dependency: 
'io.netty:netty-transport-native-unix-common:jar:4.1.72.Final'
{noformat}

Adding the os-maven-plugin didn't help here. Deactivating the 
linux-netty-native profile in the Maven pane did. I think this might be because 
IntelliJ isn't substituting the os properties when dependencies come from a 
profile. 

Now Maven syncs. I tried to build the project and had to set an SDK. I chose 
JDK11 and set the language level to 8, then tried building again. That led to 

{noformat}
package sun.misc does not exist
{noformat}

That seems to be related to https://youtrack.jetbrains.com/issue/IDEA-201168. I 
disabled the option specified there and the build continued. Now the build 
fails in TestExpandableByteBuf. Honestly, I think this file is in the wrong 
package…I moved it into arrow-memory-netty.

Continuing on, the build fails because it can't find the auto-generated 
sources. So then I manually invoked {{mvn compile}}. That inexplicably failed 
from within IntelliJ, so I switched to the CLI and ran {{mvn compile}} 
manually, which seemed to work fine. That generated 
{{arrow-vector/target/generated-sources}}, so I found that in the IntelliJ 
Project pane and right-click > "Mark Directory As" > "Generated Sources Root". 
Then I restarted the build. This finally completed successfully!

So there's a couple things to do here:

# Document the Maven issue
# Submit an upgrade of os-maven-plugin
# Document the compiler issue
# Submit moving the test file (will have to check if we're currently 
accidentally not running those tests…)
# Document that you have to Maven compile first (will retry and see if tweaking 
pom.xml lets us avoid at least manually marking the sources root)

Ah, the manual Maven build fails because of this: 
https://youtrack.jetbrains.com/issue/IDEA-278903

Disabling fork indeed fixes it in IntelliJ. Not sure how to set the other 
options mentioned.


was (Author: lidavidm):
Tracing my steps: I started with a fresh IntelliJ 2022.1 installation. I 
installed IdeaVim and CheckStyle-IDEA for reference.

I then opened the {{java}} subdirectory of a fresh Arrow checkout, and waited 
for the Maven sync. That ran into 

{noformat}
Could not find artifact 
io.netty:netty-transport-native-unix-common:jar:${os.detected.name}-${os.detected.arch}:4.1.72.Final
 in central (https://repo.maven.apache.org/maven2)
{noformat}

This seems to be related to 
https://github.com/trustin/os-maven-plugin/issues/19. I updated the plugin and 
re-opened the IDE, which seemed to fix it mostly, except in 
flight-integration-tests which had

{noformat}
Unresolved dependency: 
'io.netty:netty-transport-native-unix-common:jar:4.1.72.Final'
{noformat}

Adding the os-maven-plugin didn't help here. Deactivating the 
linux-netty-native profile in the Maven pane did. I think this might be because 
IntelliJ isn't substituting the os properties when dependencies come from a 
profile. 

Now Maven syncs. I tried to build the project and had to set an SDK. I chose 
JDK11 and set the language level to 8, then tried building again. That led to 

{noformat}
package sun.misc does not exist
{noformat}

That seems to be related to https://youtrack.jetbrains.com/issue/IDEA-201168. I 
disabled the option specified there and the build continued. Now the build 
fails in TestExpandableByteBuf. Honestly, I think this file is in the wrong 
package…I moved it into arrow-memory-netty.

Continuing on, the build fails because it can't find the auto-generated 
sources. So then I manually invoked {{mvn compile}}. That inexplicably failed 
from within IntelliJ, so I switched to the CLI and ran {{mvn compile}} 
manually, which seemed to work fine. That generated 
{{arrow-vector/target/generated-sources}}, so I found that in the IntelliJ 
Project pane and right-click > "Mark Directory As" > "Generated Sources Root". 
Then I restarted the build. This finally completed successfully!

So there's a couple things to do here:

# Document the Maven issue
# Submit an upgrade of os-maven-plugin
# Document the compiler issue
# 

[jira] [Comment Edited] (ARROW-15959) [Java][Docs] Fix IntelliJ IDE setup instructions

2022-04-26 Thread David Li (Jira)


[ 
https://issues.apache.org/jira/browse/ARROW-15959?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17528365#comment-17528365
 ] 

David Li edited comment on ARROW-15959 at 4/26/22 7:27 PM:
---

Tracing my steps: I started with a fresh IntelliJ 2022.1 installation. I 
installed IdeaVim and CheckStyle-IDEA for reference.

I then opened the {{java}} subdirectory of a fresh Arrow checkout, and waited 
for the Maven sync. That ran into 

{noformat}
Could not find artifact 
io.netty:netty-transport-native-unix-common:jar:${os.detected.name}-${os.detected.arch}:4.1.72.Final
 in central (https://repo.maven.apache.org/maven2)
{noformat}

This seems to be related to 
https://github.com/trustin/os-maven-plugin/issues/19. I updated the plugin and 
re-opened the IDE, which seemed to fix it mostly, except in 
flight-integration-tests which had

{noformat}
Unresolved dependency: 
'io.netty:netty-transport-native-unix-common:jar:4.1.72.Final'
{noformat}

Adding the os-maven-plugin didn't help here. Deactivating the 
linux-netty-native profile in the Maven pane did. I think this might be because 
IntelliJ isn't substituting the os properties when dependencies come from a 
profile. 

Now Maven syncs. I tried to build the project and had to set an SDK. I chose 
JDK11 and set the language level to 8, then tried building again. That led to 

{noformat}
package sun.misc does not exist
{noformat}

That seems to be related to https://youtrack.jetbrains.com/issue/IDEA-201168. I 
disabled the option specified there and the build continued. Now the build 
fails in TestExpandableByteBuf. Honestly, I think this file is in the wrong 
package…I moved it into arrow-memory-netty.

Continuing on, the build fails because it can't find the auto-generated 
sources. So then I manually invoked {{mvn compile}}. That inexplicably failed 
from within IntelliJ, so I switched to the CLI and ran {{mvn compile}} 
manually, which seemed to work fine. That generated 
{{arrow-vector/target/generated-sources}}, so I found that in the IntelliJ 
Project pane and right-click > "Mark Directory As" > "Generated Sources Root". 
Then I restarted the build. This finally completed successfully!

So there's a couple things to do here:

# Document the Maven issue
# Submit an upgrade of os-maven-plugin
# Document the compiler issue
# Submit moving the test file (will have to check if we're currently 
accidentally not running those tests…)
# Document that you have to Maven compile first (will retry and see if tweaking 
pom.xml lets us avoid at least manually marking the sources root)


was (Author: lidavidm):
Tracing my steps: I started with a fresh IntelliJ 2022.1 installation. I 
installed IdeaVim and CheckStyle-IDEA for reference.

I then opened the {{java}} subdirectory of a fresh Arrow checkout, and waited 
for the Maven sync. That ran into 

{noformat}
Could not find artifact 
io.netty:netty-transport-native-unix-common:jar:${os.detected.name}-${os.detected.arch}:4.1.72.Final
 in central (https://repo.maven.apache.org/maven2)
{noformat}

This seems to be related to 
https://github.com/trustin/os-maven-plugin/issues/19. I updated the plugin and 
re-opened the IDE, which seemed to fix it mostly, except in 
flight-integration-tests which had

{noformat}
Unresolved dependency: 
'io.netty:netty-transport-native-unix-common:jar:4.1.72.Final'
{noformat}

Adding the os-maven-plugin didn't help here. Deactivating the 
linux-netty-native profile in the Maven pane did. I think this might be because 
IntelliJ isn't substituting the os properties when dependencies come from a 
profile. 

Now Maven syncs. I tried to build the project and had to set an SDK. I chose 
JDK11 and set the language level to 8, then tried building again. That led to 

{noformat}
package sun.misc does not exist
{noformat}

That seems to be related to https://youtrack.jetbrains.com/issue/IDEA-201168. I 
disabled the option specified there and the build continued. Now the build 
fails in TestExpandableByteBuf. Honestly, I think this file is in the wrong 
package…I moved it into arrow-memory-netty.

Continuing on, the build fails because it can't find the auto-generated 
sources. So then I manually invoked {{mvn compile}}. That inexplicably failed 
from within IntelliJ, so I switched to the CLI and ran {{mvn compile}} 
manually, which seemed to work fine. That generated 
{{arrow-vector/target/generated-sources}}, so I found that in the IntelliJ 
Project pane and right-click > "Mark Directory As" > "Generated Sources Root". 
Then I restarted the build.

> [Java][Docs] Fix IntelliJ IDE setup instructions
> 
>
> Key: ARROW-15959
> URL: https://issues.apache.org/jira/browse/ARROW-15959
> Project: Apache Arrow
>  Issue Type: Improvement
>  Components: Documentation, Java
>Reporter: David Li
>

[jira] [Comment Edited] (ARROW-15959) [Java][Docs] Fix IntelliJ IDE setup instructions

2022-04-26 Thread David Li (Jira)


[ 
https://issues.apache.org/jira/browse/ARROW-15959?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17528365#comment-17528365
 ] 

David Li edited comment on ARROW-15959 at 4/26/22 7:25 PM:
---

Tracing my steps: I started with a fresh IntelliJ 2022.1 installation. I 
installed IdeaVim and CheckStyle-IDEA for reference.

I then opened the {{java}} subdirectory of a fresh Arrow checkout, and waited 
for the Maven sync. That ran into 

{noformat}
Could not find artifact 
io.netty:netty-transport-native-unix-common:jar:${os.detected.name}-${os.detected.arch}:4.1.72.Final
 in central (https://repo.maven.apache.org/maven2)
{noformat}

This seems to be related to 
https://github.com/trustin/os-maven-plugin/issues/19. I updated the plugin and 
re-opened the IDE, which seemed to fix it mostly, except in 
flight-integration-tests which had

{noformat}
Unresolved dependency: 
'io.netty:netty-transport-native-unix-common:jar:4.1.72.Final'
{noformat}

Adding the os-maven-plugin didn't help here. Deactivating the 
linux-netty-native profile in the Maven pane did. I think this might be because 
IntelliJ isn't substituting the os properties when dependencies come from a 
profile. 

Now Maven syncs. I tried to build the project and had to set an SDK. I chose 
JDK11 and set the language level to 8, then tried building again. That led to 

{noformat}
package sun.misc does not exist
{noformat}

That seems to be related to https://youtrack.jetbrains.com/issue/IDEA-201168. I 
disabled the option specified there and the build continued. Now the build 
fails in TestExpandableByteBuf. Honestly, I think this file is in the wrong 
package…I moved it into arrow-memory-netty.

Continuing on, the build fails because it can't find the auto-generated 
sources. So then I manually invoked {{mvn compile}}. That inexplicably failed 
from within IntelliJ, so I switched to the CLI and ran {{mvn compile}} 
manually, which seemed to work fine. That generated 
{{arrow-vector/target/generated-sources}}, so I found that in the IntelliJ 
Project pane and right-click > "Mark Directory As" > "Generated Sources Root". 
Then I restarted the build.


was (Author: lidavidm):
Tracing my steps: I started with a fresh IntelliJ 2022.1 installation. I 
installed IdeaVim and CheckStyle-IDEA for reference.

I then opened the {{java}} subdirectory of a fresh Arrow checkout, and waited 
for the Maven sync. That ran into 

{noformat}
Could not find artifact 
io.netty:netty-transport-native-unix-common:jar:${os.detected.name}-${os.detected.arch}:4.1.72.Final
 in central (https://repo.maven.apache.org/maven2)
{noformat}

This seems to be related to 
https://github.com/trustin/os-maven-plugin/issues/19. I updated the plugin and 
re-opened the IDE, which seemed to fix it mostly, except in 
flight-integration-tests which had

{noformat}
Unresolved dependency: 
'io.netty:netty-transport-native-unix-common:jar:4.1.72.Final'
{noformat}

Adding the os-maven-plugin didn't help here. Deactivating the 
linux-netty-native profile in the Maven pane did. I think this might be because 
IntelliJ isn't substituting the os properties when dependencies come from a 
profile. 

Now Maven syncs. I tried to build the project and had to set an SDK. I chose 
JDK11 and set the language level to 8, then tried building again. That led to 

{noformat}
package sun.misc does not exist
{noformat}

> [Java][Docs] Fix IntelliJ IDE setup instructions
> 
>
> Key: ARROW-15959
> URL: https://issues.apache.org/jira/browse/ARROW-15959
> Project: Apache Arrow
>  Issue Type: Improvement
>  Components: Documentation, Java
>Reporter: David Li
>Assignee: David Li
>Priority: Major
>
> A few more things need to be documented to get debugging working in IntelliJ, 
> at least in my experience. This is probably because instead of using the 
> Maven build, I'm using IntelliJ's native build, which lets me one-click run a 
> particular class or test, but needs some extra configuration.
>  * Must unset "Use --release option for cross compilation" in compiler 
> settings
>  * Must build once with Maven and mark the 
> arrow-vector/target/generated-sources directory as a generated sources root



--
This message was sent by Atlassian Jira
(v8.20.7#820007)