still not find package, after 'mvn install'

大憨熊 提交于 2019-12-12 17:24:41

问题


I'm trying to use Google protocol buffer for Java(I'm a newbie about Java, just trying).

First of all, I'm using OSX and I've installed protocol buffer with brew install protobuf command.

protoc command works okay.

I've generated MyProtocol.java by protoc.

I've installed protocol buffer for Java as its instruction(README.txt).

mvn install command created .m2 directory and I can find protobuf-java-2.4.1.jar file somewhere in the directory.

I wrote simple test Java code just importing MyProtocol.java and it complains could not find package com.google.protobuf.

So, I've just make jar file mvn package and add its directory as CLASSPATH and it compiled well.

javac -classpath <protobuf-dir>/jara/target/classes Test.java ./com/example/tutorial/AddressBookProtos.java

If I use maven's repository directory (~/.m2/repository), it complains again.

Doesn't maven make CLASSPATH for me if I install the package? If not, how can I use installed package by maven to compile my code?


回答1:


The Maven Dependency Plugin has a goal called build-classpath which does what you need. You can get usage hints on the Usage page




回答2:


Maven doesn't change your setup, so it's up to you to set your CLASSPATH according to your need.

However there are at least two ways in which Maven can halp you:

  • You can use the Maven Assembly plugin to collect all your dependencies in a directory or an archive, so that you only need to add a single directory to your CLASSPATH in order to run your program;
  • You can use the Exec Maven plugin to add the running of your program as a goal in your POM and then run it with Maven.


来源:https://stackoverflow.com/questions/12509050/still-not-find-package-after-mvn-install

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!