Hard time getting mouse click to work

Using Unity 2017.1.

I just can’t get it to work; even with the simplest scenes. Here is what I did:

  1. Create a new 2D project.
  2. Add a sprite to the project and drag it to Hierarchy to create a GameObject.
  3. Add RigidBody2D component to this GameObject (not doing this step doesn’t make a difference though).

Now I want it to do something on MouseDown. I tried the following two ways:

  1. Add a script to this object. Add the following function to it:

    void OnMouseDown()
    

    {
    }

Place a breakpoint and run the project. Click on the GameObject. No mouse down.

  1. Add a new EventTrigger component. Add the following method to the script:

    public void Strike(BaseEventData d)
    

    {
    }

Link this function to the EventTrigger component using Pointer Down event. Place a breakpoint on the function and run. Click on the GameObject. Still no mouse down.

Can anyone help me figure out what’s wrong here?

Edit

Here is the complete script:

using UnityEngine;
using UnityEngine.EventSystems;

public class BoardController : MonoBehaviour
{
  void OnMouseDown()                        //breakpoint on this line
  {
  }

  public void Strike(BaseEventData d)       //breakpoint on this line
  {
  }
}

Do you have any type of collider on the object. OnMouseDown() doesn’t work without a collider.

I made an exact copy of the project and it works in mine if you add a collider, so I guess it must be an absent collider.