Windows10環境下Idea開啟Rust專案目錄不識別Rust工程的解決辦法
阿新 • • 發佈:2018-12-01
環境:windows10 ,已經安裝rust語言外掛
問題:Idea開啟Rust專案目錄不識別Rust工程,程式碼不能跳轉
解決辦法:修改.iml檔案的內容如下,然後儲存,idea會自動生成sourceFolder等相關的原始碼路徑配置。如果Idea報找不到Cargo.toml檔案,則根據提示找到專案的根Cargo.toml檔案。
注意,module type 要設定為RUST_MODULE 而不是JAVA_MODULE。
<?xml version="1.0" encoding="UTF-8"?> <module type="RUST_MODULE" version="4"> <component name="NewModuleRootManager" inherit-compiler-output="true"> <exclude-output /> <content url="file://$MODULE_DIR$"/> <orderEntry type="inheritedJdk" /> <orderEntry type="sourceFolder" forTests="false" /> </component> </module>
配置完成後,開啟rust工程的目錄,idea會自動將其識別為Rust工程,然後程式碼就可以跳轉了。
下圖是配置完成後xxx.iml檔案的內容,其中xxx是專案的名稱。
<?xml version="1.0" encoding="UTF-8"?> <module type="RUST_MODULE" version="4"> <component name="NewModuleRootManager" inherit-compiler-output="true"> <exclude-output /> <content url="file://$MODULE_DIR$"> <sourceFolder url="file://$MODULE_DIR$/dir-xxx/src" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/dir-xxx/examples" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/dir-xxx/tests" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/dir-xxx/benches" isTestSource="true" /> <excludeFolder url="file://$MODULE_DIR$/dir-xxx/target" /> <excludeFolder url="file://$MODULE_DIR$/target" /> </content> <orderEntry type="inheritedJdk" /> <orderEntry type="sourceFolder" forTests="false" /> </component> </module>
配置完成xxx.iml檔案後,會自動更新modules.xml misc.xml vcs.xml workspace.xml等相關的配置檔案。
modules.xml檔案內容示例如下。
<?xml version="1.0" encoding="UTF-8"?> <project version="4"> <component name="ProjectModuleManager"> <modules> <module fileurl="file://$PROJECT_DIR$/.idea/xxx.iml" filepath="$PROJECT_DIR$/.idea/xxx.iml" /> </modules> </component> </project>
備註:
xxx.iml檔案的位置可能是在.idea目錄下,也可能是在工程根目錄下