Error in rename a module in IntelliJ IDEA 2020.1? - java

Whenever I rename a module I make in Intellij IDEA, it always show the new name in [], next to the old one, rather than just renaming the module as a whole.
How do I replace the name of the module? The iml seems to change but not the name in Intellij or a file explorer. Also, I renamed it by doing refactor-->rename, and then proceeded to restart the IDE. It still would not change. Thanks.

You can change your module name to follow below steps.
1. Project Structure(press [Ctrl] + [Alt] + [Shift] on Windows)
2. move to 'Project' tab
3. rename 'Project name'
4. move to 'Modules' tab
5. rename 'name'

IntelliJ IDEA has some guildlines to rename the directory which is maintained by git.
Please look into this link
JetBrain Guidlines for rename directory
I tried to rename a directory but it is showing like cannot rename it seems

In the Projects tool window right-click a directory or a module that you want to rename.
From the context menu, select Refactor | Rename (⇧F6).
In the dialog that opens, select what you want to rename. If you have a module with one content root, and it has the same name as your module, you can rename them both simultaneously.
In the dialog that opens, add the new name, check where to search for references and click OK.
See Rename a directory or a module
NOTE: that for Maven or Gradle based modules - you should configure module names in corresponding Maven/Gradle build files.

All I had to do was rename the actual folder, then it would completely rename.

For me I have to remove all the modules manually and reload each module again after that name was showing properly.

Related

How to rename / move a project in Intellij Idea 12?

As stated here one can change the name of a project. However, it only changes the name of the project and it will not change the folder structure.
As an example if your project is called sample1 and it resides ~/user1/development/IdeaProjects/sample1, the folder location won't be changed to ~/user1/development/IdeaProjects/sample2 if one changes the project name to sample2.
Right click on project, then Refactor -> Rename... (shift+F6), set desired name
Close IntelliJ
Rename directory in your filesystem to your desired name
In startup dialog select Open (or File -> Open... in main window)
Please select renamed project directory
Enjoy, it work's for me!
It seems that one has to right click on the project (after following the instructions to rename the Project), then choose Refactor -> Move to relocate project to the new location. I didn't find any solution to rename and move a project at once.
Close IntelliJ
Rename the folder in Explorer (Windows) / Finder (OSX)
Open IntelliJ
Import Project from Dialog, or File -> Import Project
Select the folder with the new name
Follow the dialogues
I know that probably I won't be able to help sheidaei after more than 7 years from asking question, but I hope that someone will find it useful :)
To change project directory name of a current project without closing Intellij, choose view of "Project Files" in drop-down menu in the project browser(typically on the left) instead of "Project".
How to select "Project Files" view in project browser
Then use right-click on project's directory name/path to open context menu.
Use Refactor->Rename.
Finding option "Rename" in context menu
Type in a new directory name, apply changes using button "Refactor" and that's it.
"Rename" dialog box
If you wish to change Module Name to match directory name, use Refactor->Rename option on project name in "Project" view of project browser.
If it is a gradle project, instead of renaming it using Refactor->Rename :
set the rootProject.name variable in the settings.gradle file to the new project name.
reimport the project. Hit the 'Refresh all Gradle Projects' button in the Gradle Tool Window.
Then follow steps 2 to 5 in #Dawid's answer.
To remove the old project from IntelliJ's list of managed projects:
select File->Open Recent->Manage Projects..
click the 'x' next to the old project name
Go to File then Project Structure
Under Project Settings -> Project make sure that you change the project name.
Then under Project Settings -> Modules change the name there as well.
Restart Intellij
Use your File Explorer to confirm that the project/modules have been renamed.
After renaming the project folder of a Kotlin project in IntelliJ, using the Import Project option as suggested in the other answers created module related problems for me. I was not able to select Main class in the Run dialogue. To solve this, I used Create New Project option. It doesn't delete your project files.
So to rename the folder, first create a copy of your project for safety and then follow these steps:
Close IntelliJ.
Go to file explorer and manually rename the folder.
Open IntelliJ.
Choose the option Create New Project
Select your desired language/framework e.g. Kotlin, click Next
For Project Name, specify your desired project name. Maybe same as folder name.
For Project Location, choose the folder that you manually renamed.
Click Finish, IntelliJ will ask if you want to overwrite .idea and .iml files. Click Yes for both.
Hope that helps.
For JetBrains v. 2019.2 (September 2019):
To move project directory without changing it's name:
Press Alt+1 to open project structure
Right click on project directory
Go to File -> Refactor -> Move directory
OR
Left click on project directory
Press F6
Specify target parent directory and hit OK.
To rename project directory:
Press Alt+1 to open project structure
Right click on project directory
Go to File -> Refactor -> Rename...
OR
Left click on project directory
Press Shift+F6
Select Rename directory (actually it's already selected) and hit OK.
Specify new directory name.
If you need both to move project directory and to change it's name, then do the steps one after another.
After you've done renaming/moving, close the project and remove it from the recent projects list (it became non-functional and you won't need it anymore there).
Then hit "Open" and find the project directory at it's new location. Now you have your project directory moved!
The last two steps should be done with a command like Edit project or something like that, where you can directly specify project directory, but as there is no such command, you need to remove project and reopen it at it's new location instead.
A work-arround for this, if you get an error when click "projectPackage" -> Refactor -> Move, is to close Intellij, move the folder manually, and then in:
C:\Users\user.name\ .IntelliJIdea2019.1\config\options
edit the file recentProjects.xml like this, with you new path, save and close, re-open jetbrains ide and it's done.
Well, I have figured this out and I will write down a step by step guide to how to rename the project directory linked to a GitHub repo.
Situation:
Windows 10
IntelliJ project is linked with a GitHub repo
I want to rename the GitHub repo and the project directory name and keep all my work the same.
Solution:
rename the repo on GitHub, make sure pages is still working with the new name
rename the project from IntelliJ by (right-click on the parent directory -> refactor -> rename)
rename the directory from IntelliJ by (right-click on the parent directory -> open module settings -> project)
3.1. update "project name"
3.2. update project compiler output
rename the GitHub remote repo from IntelliJ by (VCS -> git -> remotes)
close IntelliJ
open System Explorer
6.1. rename the project directory
6.2. open "workspace.xml" and rename all occurrence of the old word (you might want to cut it in another place, update it, then paste it back)
open IntelliJ and select import project
now, everything is okay, you can use Git inside IntelliJ normally as nothing has happened!
That is it, I just made a push from IntelliJ to the renamed repo and everything works as before without any mention of the old name.
click on your project file,which is you want to move and then push F6
Close IntelliJ
Rename the folder in Explorer (Windows) / Finder
(OSX)
Open IntelliJ Import Project from Dialog, or File -> Import
Project
Select the folder with the new name
further additional steps might be required if you see your module named
as new_modulename[parent module/old module name],
then update
settings.gradle with new name and reimport

accidentally deleted the default output folder in eclipse

I was rearranging some files in eclipse, and I accidentally deleted the default output folder. This is the location where eclipse stores the class files. Can anyone show how to recover it? Or rebuild it from the .java files?
EDIT:
I just restored the project from backup files. So this question is no longer relevant. Unless some future reader did not backup their application before making this same mistake.
from the menu bar select:
Project->Clean...
That will bring up a dialog box to select which projects to rebuild. The bin directory should be automatically regenerated.
Recompile your project, and Eclipse should create it again (default name is bin on some versions)
If not, navigate to your project settings, and go to
Java Build Path > Sourceand at the bottom you will see the default output folder. You can create it again by using the Browse button, and then Create new folder
All you need to do is re-compile your project, For that you can select your Project and do Ctrl+B or just select Project->Build Project
EDIT:
As you mention in the comments that you still do not see the class files. Please check the Default output folder by selecting your project Right-click Build Path -> Configure build path... then select Source tab and see what the Default output folder: mentioned there, your class files must be created there.

Linking Eclipe projects together using 'Deployment Assembly' and 'Build Path' options

I have a simple java project with this basic structure:
IncludeMe
src
deploy
siteSpecific
-> site1
-> site2
-> etc...
I also have another project which I check out as a Dynamic Web project.
I add it to a tomcat7 instance and run it locally on my machine.
MainWebApp
src
deploy
WebContent
-> resources
-> templates
-> etc...
What I need is to include the 'siteSpecific' folder from the 'IncludeMe' project under the 'WebContent' directory in the 'MainWebApp' project.
So if I make a change to files under 'IncludeMe->siteSpecific', they are automatically picked up and applied by my MainWebApp under 'MainWebApp->siteSpecific' i.e. I do bot want to have to manually copy the contents between the two separate projects.
I currently do the following with no luck:
- Open 'properties' of 'IncludeMe' and go to 'Deployment Assembly'
- Select 'Add' and choose the 'SiteSpecific' folder.
- Source then reads '/siteSpecific' and I adjust the deploy path to be 'siteSpecific'
- Open 'properties' of 'MainWebApp' and go to 'Java Build Path'
- Go to 'projects' tab and add the 'IncludeMe' project.
I'm using Eclipse Indigo 3.7 by the way.
Any help appreciated
Thanks
This is a bit hacky solution but the only one I found when I needed something like this.
The trick is to link external source folder and then use it in "deployment assembly"
Do the following:
Right click on Your webapplication project (MainWebApp)
Build path
Link source
Variables (Here we will add variable that points to our external project, relative to our current project)
New (add something like: "${PROJECT_LOC}..\IncludeMe" in "Location" and some name for new variable)
OK
Extend (You should extend variable You've created on prev. step).
Pick right folder and press OK.
Next.
Add exclusion pattern to prevent eclipse from building anything from that folder.
Finish
After this dancing You should be able to see linked folder in "deployment assembly"...

Change Eclipse's project location in file-system

I have a project of eclipse that is located in some folder on my my local-disk. Let's say: c:\proj1.0
and after a while I need to change the folder name to proj2.0 (why? because I started working on the next version of my application and I want to save the time of creating the new project in Eclipse. The older version is stored in the source control anyway)
How can I do it? if I try to change it than the project cannot be found by eclipse.
I didn't find the eclipse configuration file where the absolute location of the project is defined.
You have to change the project's name from Eclipse. In the Package explorer Right-click the project -> Refactor -> Rename. Or simply click on the project and press Alt + Shift + R. This way no configuration will be lost.
Another way would be to move the project's folder by Right-clicking on the project > Refactor > Move.
Alternatively, if you already renamed the folder's name and cannot see the project in Eclipse anymore, you can select File menu -> Import -> Existing projects into Workspace, navigate to the parent folder of your project's folder, then select the projects you want to import and press Finish.
It sounds like you think the name of the project comes from the workspace folder. This is not the case. The project name is contained in a hidden .project file. The refactoring tools are probably a better way to go, but that doesn't seem to be what you want.
Make new proj2.0 directory.
Copy hidden .project and .classpath files from proj1.0 directory to proj2.0 directory.
Edit .project in a plain text editor and change the name.
In Eclipse, Import Existing Projects into workspace and point to the proj2.0 directory.
if you wish your Source folder some where else :
Right Click > Build Path > New Source Folder > Link Source >
then choose your Source file Location
and then Click
Finish
When you make Source file some where else out of your Eclipse project
then :
1st : You are able to have more than one project in Eclipse from same Source also
2nd : Save your time for transferring your source file with out Eclipse project
3rd : you wont delete your source file by the mistake when you delete Eclipse project
First I use Refactor/Move to rename my project folder's name. Then I use Refactor/Rename to change my project's name in Eclipse.

Creating a separate Folder in the same package... [ECLIPSE]

Is it possible in Eclipse to create a separate Folder in a package? When select "new --> folder", my eclipse version always creates a package. But i want the new folder to be in the old package.
How can this be achieved?
Thanks in advance...
Patrick
What you might want to do, if you aren't putting code in that folder, is remove the folder from the build path. Right-click on the offending folder in eclipse and choose 'exclude from build path.'
Or, you may want a different effect:
Right click on your project and choose add new source folder.
Then in that folder, add the correct package folder structure.
You can have files in the same package located in different folders.
You need to exclude the folder from the source path
In a source folder, all 'new' folders will be considered a new package. It's part of the Java spec that makes all folders from a root to be part of the package structure.
As others have said, this is standard java behaviour and shouldn't really be worked around.
You are probably better off creating another folder outside of the source folder.
However there is a way to do it in Eclipse, be warned that this might come back to haunt you if you later try to build outside Eclipse as other tools won't honour these settings.
You can exclude a folder from the source path by opening the project properties.
Selecting Java Build Path->Source
Select the appropriate source folder and select the Excluded: child item
Hit the Edit... button.
Select the Add button next to the Exclusion patterns: pane
Add your folder and Finish/OK back to the editor.
The matching resources will now be excluded from compilation within Eclipse. It will still appear as a package in the editor though.
You want to create a new child package (bar) of the existing package. (com.foo)
Select new package and name it "com.foo.bar". Eclipse will correctly place it under com.foo.
FYI: Folders under any "source" folder are shown as packages. There is no physical difference except that they appear on the build path. As shown elsewhere you can exclude them but it's easier to just not put them under /src/... to begin with.

Categories

Resources