- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
javac -sourcepath 选项有什么意义?
假设你有一个文件 Ball.java 和一个文件 Eight.java,运行起来似乎没有区别:
javac Eight.java lib/pool/Ball.java
和
javac Eight.java -sourcepath lib
类路径对我来说很有意义,因为它意味着您只需要将类文件分发给不需要弄乱源代码的开发人员,但我认为您只有在您自己的情况下才可能拥有/需要源代码拥有/一个内部项目,所以不明白为什么需要它。
人们是否拥有大型源代码存储库而不是类?
通过进一步的测试,我已经确认 -sourcepath 甚至没有像类路径那样考虑源的最后修改日期,因此甚至无法想象在构建过程中节省时间。与使用 -classpath 时一样,如果 .class 文件不存在而源文件存在,或者如果 .java 文件比 .class 文件更新,这将构建 .class 文件,而无论如何都会再次构建 sourcepath 上的任何源文件他们有多新。当同时指定 -sourcepath 和 -classpath 时,如果源文件较新,它会采取类路径的操作来重建,因此指定源路径和类路径似乎完全没有意义。我还进行了测试以确保 -sourcepath 和 -classpath 都只构建解析所需的必要源文件。与指定我能找到的特定 .java 文件相比,-sourcepath 的唯一好处是 sourcepath 只需指定一个目录,并且会自动提取任何 jar 或 zip 文件。
那么 -sourcepath 的意义是不是因为懒惰(不想提取并指定所有源文件)?使用 -sourcepath 而不是 -classpath 有什么好处吗?因为它们似乎做同样的事情,但类路径通过在源不需要重建时节省时间来更好地执行它。
最佳答案
源路径用于定位在您要求编译的文件(在您的示例中为 Eight.java)中引用的类的 .java 文件,其中不存在 .class 文件。编译器也会自动编译它们。我不确定它是否比较 .java 和相应的 .class 文件的修改时间,如果它较新则重新编译 .java,但我认为它确实如此。
关于java - sourcepath 和只指定源文件的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16186967/
我在 C:\,我想从这里编译我的 Bingo.java 源文件,该文件位于 C:\Users\Devashish\Documents\NetBeansProjects\Bingo\src\bingo\
javac -sourcepath 选项有什么意义? 假设你有一个文件 Ball.java 和一个文件 Eight.java,运行起来似乎没有区别: javac Eight.java lib/pool
我有这个java源文件 C:\crp\dfdf\src\oata\HelloWorld.java 我可以编译它 C:\crp\dfdf>javac -sourcepath c:\crp\dfdf -d
为了oracle认证而学习我正在尝试所有可能在考试中出现的场景。比如这里对shell命令行(unix based)有一点疑问: 假设有一个名为 myProject 的文件夹和一个名为 myProjec
我想使用 Eclipse 类路径变量来解析类路径中库的附加源 JAR 文件。这是我当前在 Elcipse (Indigo) 中的“.classpath”文件的内容:
我已通过"file">“项目结构”>“模块”>“依赖项”> 双击“Android 平台”>“源路径”附加了 Android 源代码。 在大部分情况下都有效,但在源代码的许多类中,IntelliJ 提示
我有一个java项目,其中的文件系统如下:我有 3 个目录:bin、src 和 lib。 src 包含我的 *.java 文件 bin 包含我的 *.class 文件(使用 src 中的文件编译) l
我正在制作一个基于 JS 插件 (DataTables) 的 Assets 包,该插件已通过 composer 安装在 vendor/ 目录中。 Assets 包类文件如下所示: true,
在 Ant 中, 之间有什么区别?和 元素?我将它们用作 的子元素.我通读了手册,但也许我错过了 的定义. 谢谢! 最佳答案 sourcepath 是源文件的路径。它对于发送先前定义的路径引用很有
我有一个相对简单的项目,它受源代码控制(svn),我想创建一个安装程序。我知道我可以(应该)使用 WiX ,但由于我是创建安装程序的新手,我认为使用内置的 Visual Studio (2010) 安
我是一名优秀的程序员,十分优秀!