wp_enqueue_script does not recognize my js file?

Two things-

When you enqueue a script, WordPress inserts the script tag in the call to wp_head(), so step one is to remove the script tag from your header.

The second thing is the jQuery supplied with WordPress is in no conflict mode by default, so you should reference the jQuery object with jQuery rather than $:

jQuery(function () {
    alert("hello");
});